インストール済みオプショナル・パッケージ により、アプリケーションでは、Java アーカイブ (.jar) ファイルのクラスを、クラスパスに明示的に組み込むことなく使用することができます。インストール済みオプショナル・パッケージは、アプリケーション・サーバーで識別が可能なように、マニフェスト・ファイルに特殊タグを含む .jar ファイルです。インストール済みオプショナル・パッケージは、アプリケーションのマニフェスト・ファイルに 1 つ以上の共用ライブラリー .jar ファイルを宣言します。アプリケーションがサーバーまたはクラスターにインストールされると、 共用ライブラリーにより表されるクラスがアプリケーションのクラス・ローダーにロードされ、 そのクラスがアプリケーションで使用できるようになります。
Java 2 Platform, Enterprise Edition (J2EE) アプリケーションがサーバーまたはクラスターにインストールされると、 従属情報がマニフェスト・ファイルに指定されます。 WebSphere Application Server は、アプリケーションの従属情報 (.ear ファイル) を読み取り、アプリケーションをインストール済みオプショナル・パッケージの .jar ファイルに自動的に関連付けます。WebSphere Application Server は、関連するオプショナル・パッケージの .jar ファイルをアプリケーション・クラスパスに追加します。これで、インストール済みオプショナル・パッケージのクラスをアプリケーション・クラスで使用できるようになります。
WebSphere Application Server で使用されるインストール済みオプショナル・パッケージについては、J2EE 仕様バージョン 1.4 のセクション 8.2 (http://java.sun.com/j2ee/j2ee-1_4-fr-spec.pdf) に記載されています。
WebSphere Application Server は、共用ライブラリー .jar ファイルおよびアプリケーション .ear ファイルにおけるマニフェスト・ファイル (manifest.mf) の使用をサポートしています。WebSphere Application Server は、主にアプレット環境として使用される Java 2 Platform Standard Edition (J2SE) 仕様 (http://java.sun.com/j2se/1.3/docs/guide/extensions/spec.html) で使用される、 J2SE インストール済みオプショナル・パッケージのセマンティクスはサポートしません。WebSphere Application Server はマニフェスト・ファイル内のアプレット固有のタグを無視します。
単一の共用ライブラリー・ファイル util.jar を参照するアプリケーション app1.ear のマニフェスト・ファイルのサンプルを以下に示します。
app1.ear: META-INF/application.xml ejb1.jar: META-INF/MANIFEST.MF: Extension-List: util util-Extension-Name: com/example/util util-Specification-Version: 1.4 META-INF/ejb-jar.xml util.jar: META-INF/MANIFEST.MF: Extension-Name: com/example/util Specification-Title: example.com's util package Specification-Version: 1.4 Specification-Vendor: example.com Implementation-Version: build96
マニフェストのエントリーの構文は、エントリーが定義側の役割のメンバー (共用ライブラリー) に適用されるか、参照側の役割のメンバー (J2EE アプリケーションまたは J2EE アプリケーション内モジュール) に適用されるかによって異なります。
マニフェスト・エントリーで使用される主なタグは以下のとおりです。
これらのタグの詳細については、.jar ファイル仕様 (http://java.sun.com/j2se/1.4.2/docs/guide/jar/jar.html#Manifest%20Specification) を参照してください。