Liberty の共通 OSGi バンドルの共有

共通 OSGi バンドルをローカル・ディレクトリーまたはリモート・リポジトリーに入れ、サーバーの server.xml ファイルを構成して、OSGi アプリケーションでそれらの共通 OSGi バンドルを使用できるようにすることで、共通 OSGi バンドルを共有できます。

ローカル・ディレクトリー

手順

  • ファイル・システム内にディレクトリーを作成し、すべての共通 OSGi バンドルをそのディレクトリーに入れます。
  • 以下の行を server.xml ファイルに追加します。
      <bundleRepository> 
       <fileset dir="directory_path" includes="*.jar"/> 
      </bundleRepository> 
    ここで directory_path は、共通 OSGi バンドルを含むディレクトリーのパスです。
    注: サービス・ベースのプロビジョニングをサポートしていないリモート・バンドル・リポジトリーもあります。 『Use Blueprint to enable service-based provisioning』を参照してください。 Rational Asset Manager は Blueprint のサービスおよび参照を正しくモデル化しますが、Apache Maven ベースのほとんどのリポジトリーはそうではありません。このような場合は、むしろAPI バンドルと実装バンドルを分離するよりも、Blueprint のサービス提供バンドルと API バンドルをマージすることで、クライアント側のサービス API へのパッケージ依存関係によってサービス実装もプロビジョンされるようにすることができます。
  • OSGi アプリケーションの manifest.mf ファイルで import 句を使用して、共通バンドルへの依存関係を定義します。

リモート・リポジトリー

OSGi Bundle Repository (OBR) 形式に対応したリモート OSGi リポジトリーに保持されているバンドルにアクセスできます。

手順

次の行を server.xml ファイルに追加します。
<bundleRepository location="URL" />
ここで、URL は OBR XML ファイルのロケーションを指しています。次のプロトコルがサポートされています。
  • HTTP
  • HTTPS
  • file
注: 相対ファイル URL を指定した場合、その URL は ${server.config.dir} の値に対する相対として処理され、ローカルの OBR XML ファイルに解決されます。

同じ bundleRepository エントリー内で、location 属性とネストされた fileset タグの両方を使用することで、リモート・リポジトリーとローカル・リポジトリーを同時に定義できます。


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



タイム・スタンプ・アイコン 最終更新: Monday, 5 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-libcore-mp&topic=twlp_dep_commonbundles
ファイル名: twlp_dep_commonbundles.html