サービスとパーシスト ID との関連付け

パーシスト ID を使用して、 OSGi Configuration Admin 仕様に規定されているように、構成プロパティーの セットをその消費コンポーネントと関連付けます。

このタスクについて

OSGi Configuration Admin 仕様には、多数の関連付けの方法 が用意されていますが、Liberty プロファイルで最も一般的に使用されるのは以下の方法です。
org.osgi.service.cm.ManagedService または org.osgi.service.cm.ManagedServiceFactory の実装を 直接 OSGi Configuration Admin サービス (CA) に登録する
これは、低水準カーネル・バンドルで最も一般的に使用されます。低水準カーネル・バンドルでは、バンドルの開始時に OSGi Declarative Services (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">

トピックのタイプを示すアイコン タスク・トピック

インフォメーション・センターに関するご使用条件 | フィードバック


タイム・スタンプ・アイコン 最終更新: 2015 年 6 月 17日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_setup_service_id
ファイル名: twlp_setup_service_id.html