CQ - 如何提前知道 Osgi Config 工厂 PID

CQ - how to know an Osgi Config factory PID in advance

Adobe 的文档说:

When making a Factory Configuration append -<identifier> to the name.

As in: org.apache.sling.commons.log.LogManager.factory.config-<identifier>

Where is replaced by free text that you (must) enter to identify the instance (you cannot omit this information); for example:

org.apache.sling.commons.log.LogManager.factory.config-MINE

这意味着“自由文本”是一个标识符,而不仅仅是一个名称。我希望它是服务 PID。

我正在设置 JDBC 连接池的一个实例。我的 /jcr_root/apps//config 目录中有一个 xml 配置文件,名为“com.day.commons.datasource.jdbcpool.JdbcPoolService-mypid.xml”。安装包含 xml 文件的包会创建预期的、正确命名的 sling:OsgiConfig 节点。这反过来会创建服务的配置实例,但 PID 是 com.day.commons.datasource.jdbcpool.JdbcPoolService..

有什么办法可以提前知道PID是多少,以便参考吗?

目前无法提前知道这个id。我已经在 OSGi 开发人员列表上询问是否可以对此进行增强。以人类可读的方式识别工厂配置会很好。不幸的是,回应是没有必要或类似。也许如果更多人要求它:-)