Declarative Services を使用し、Equinox にデプロイするように設計された非常に洗練された OSGi アプリケーションがあります。ここでのタスクは、このアプリケーションを WAS 8 でデプロイできるようにすることです。
最初の試行は非常に実用的でした。基本的に同じ Equinox を開始した EAR を展開し、いくつかの WAS クラス ロード ポリシーの微調整の後、それは機能しました。
ここで、さらに先に進みたいと思います。Equinox ランタイムを取り除き、バンドルを WAS 8 に「ネイティブに」デプロイします。そのため、ビジネス バンドル、それらの依存関係、および Equinox DS ランタイムから構成される EBA を作成しました。EBA はアセットとしてデプロイされ、BLA に統合されます。アプリケーションは起動して実行されていますが、コンポーネントは初期化されていません。
ポイントは、 DS にその仕事をさせるために、独自のビジネス バンドルの前でequinox.ds を開始する必要があるということです (UPDATE: 必須ではありません。以下で説明します) 。しかし、展開された EBA 内で最初に開始されるバンドルをどのように通知すればよいでしょうか? Equinox の config.ini ファイルの類似物が必要です。
ネイティブにサポートされているブループリントを使用してコンポーネントを再配線できることはわかっていますが、率直に言って、これはやりたくありません。Equinox DS を動作させることができるはずですよね?
もう 1 つの質問は、WAS 8 にデプロイされた独自のアプリケーション用の OSGi コンソールを取得する方法です。バンドルを制御したいのですが、管理コンソールから行う方法がないようです。
アップデート
BJ と Neil のおかげで (以下の説明を参照)、質問は「WAS 8.0 にデプロイされた自分の OSGi アプリケーションで特定のバンドルを開始するにはどうすればよいですか?」に要約されます。