使服务与持久存储的身份相关联

如 OSGi 配置管理规范中所述,通过使用持久存储的身份 (PID) 使配置属性集与其消费组件相关联。

关于此任务

OSGi 配置管理规范提供了许多关联机制,下列机制是 Liberty 中最常用的机制:
直接向 OSGi 配置管理 (CA) 服务注册 org.osgi.service.cm.ManagedServiceorg.osgi.service.cm.ManagedServiceFactory 的实现
这在低级内核捆绑软件中最常用,其中,通过 OSGi 声明式服务 (DS) 或 Blueprint 进行服务管理在捆绑软件启动时不可用。注册指定用来确定要接收的配置集的 PID。
将服务定义为 DS
这是功能部件捆绑软件中服务接收其配置的最常用方式。服务名称用作 PID 来关联配置数据。DS 从 CA 接收配置集,并将其传递到定义的服务。

示例

可在项目 *.bnd 文件中使用下列条目来声明服务:
Service-Component: com.ibm.ws.transaction; \
	  	  provide:='com.ibm.tx.config.ConfigurationProvider'; \
	  	  immediate:='true'; \
	  	  modified:='modified'; \
    implementation:=com.ibm.ws.transaction.services.JTMConfigurationProvider
这会生成以下 XML 代码,此代码也可以由开发者进行编码,而不是使用 bnd Service-Component 条目进行编码:
<component name="com.ibm.ws.transaction" xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
           immediate="true" modified="modified">
    <implementation class="com.ibm.ws.transaction.services.JTMConfigurationProvider" />
  <service>
      <provide interface="com.ibm.tx.config.ConfigurationProvider" />
  		</service> 
  <property name="service.vendor" value="IBM" />
</component>
此示例中的组件名称 com.ibm.ws.transaction 用作 PID 来关联配置数据。如果此组件没有提供任何元数据来描述其配置,那么可以在 server.xml 文件或包含的文件中,使用该 PID 通过定义以下形式的条目,为此组件指定配置属性:
<com.ibm.ws.transaction made.up.property.key="47">

用于指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_setup_service_id
文件名:twlp_setup_service_id.html