OSGi バンドルは、Java™ コード、リソース、およびバンドルとその依存関係を示すマニフェストを含む Java アーカイブ・ファイルです。 OSGi バンドルには、サービスの実行に必要なビジネス・ロジックおよびメタデータが含まれます。 バンドルは、アプリケーション内のモジュールで、後にサーバーにデプロイされます。
OSGi アプリケーション・プロジェクトは、バンドルのセットをグループ化して一貫性のあるビジネス・ロジックを提供します。 アプリケーションは、Web 対応バンドルやパーシスタンス (JPA) 使用可能バンドルなど、さまざまなバンドル・タイプで構成できます。
この演習では、Plain Old Java Object (POJO) コンポーネント・アセンブリー・モデルを提供するサービスを定義する、OSGi ブループリント情報が含まれる OSGi バンドルを作成します。 POJO は通常の Java オブジェクトであり、エンタープライズ・エンティティー Bean などの特殊な Java オブジェクトとは区別されます。
CounterServiceBundle バンドルを作成するには、以下のようにします。
OSGi バンドル・プロジェクトが作成され、バンドル・マニフェストがプロジェクトに追加されます。 OSGi アプリケーション・プロジェクトも作成され、アプリケーション・マニフェストがプロジェクトに追加されます。 アプリケーション・マニフェスト・ファイルには、OSGi フレームワークがバンドルのモジュラー・アスペクトを処理できるようにするメタデータが含まれます。 OSGi アプリケーション・マニフェスト・ファイルについて詳しくは、アプリケーション・マニフェスト・ファイルを参照してください。
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CounterServiceBundle
Bundle-SymbolicName: CounterServiceBundle
Bundle-Version: 1.0.0
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
OSGi バンドル・マニフェスト・ファイルには、OSGi フレームワークがバンドルのモジュラー・アスペクトを処理できるようにするためのメタデータが含まれています。
OSGi バンドル・マニフェスト・ファイルについて詳しくは、「OSGi バンドル・マニフェスト・ファイル」を参照してください。Application-Name: CounterApp
Application-SymbolicName: CounterApp
Application-ManifestVersion: 1.0
Application-Version: 1.0.0
Manifest-Version: 1.0
Application-Content: CounterServiceBundle;version=1.0.0,
Application-SymbolicName は、OSGi アプリケーション名です。 Application-Content は、許容範囲内の OSGi バージョン仕様のバンドル名をリストします。このチュートリアルでは、バンドル CounterServiceBundle はバージョン 1.0 以降で許容されます。
OSGi アプリケーション・マニフェスト・ファイルについて詳しくは、アプリケーション・マニフェスト・ファイルを参照してください。
CounterServiceBundle バンドルおよび CounterApp アプリケーションを作成しました。