Java™ Persistence API (JPA) を使用するアプリケーションの開発と構成は完了しました。
次に、環境に合わせて JPA アプリケーションをパッケージ化する必要があります。
このタスクについて
このタスクでは、JPA 2.1 アプリケーション用の com.ibm.ws.jpa-2.1.thinclient_9.0.jar スタンドアロン Java アーカイブ (JAR) ファイル、または com.ibm.ws.jpa-2.0.thinclient_9.0.jar ファイルをクラスパスに指定する必要があります。このスタンドアロン JAR
ファイルは、クライアントおよびサーバーのインストール・イメージにあります。
クライアント・インストール・イメージ上のこれらの .jar ファイルのロケーションは、${app_client_root}/runtimes/ ディレクトリー内です。サーバー・インストール・イメージ上のこれらのファイルのロケーションは、${app_server_root}/runtimes/ ディレクトリー内です。
手順
- アプリケーションをパッケージ化します。
注: パーシスタンス・ユニットは、アクセスおよび再使用しやすくなるよう、個別の JAR ファイルにパッケージ化します。
この方法でパーシスタンス・ユニットをパッケージ化すると、
データベース・パーシスタンスの有無にかかわらず、そのユニットをコンテナーの外部でテストできます。
パーシスタンス・ユニットは、スタンドアロンのアプリケーションに組み込むことも、パーシスタンス・アーカイブ・ファイルとして EAR ファイルにパッケージ化することもできます。
パーシスタンス・アーカイブ・ファイルにパーシスタンス・ユニットをパッケージ化する場合は、すべてのアプリケーション・コンポーネントがそのパーシスタンス・アーカイブにアクセス可能である必要があります。
そのパーシスタンス・ユニットを使用するアプリケーションでは、
MANIFEST.MF Class-Path: の宣言を使用して、パーシスタンス・アーカイブの依存関係を宣言する必要があります。
JPA アプリケーションの開発時にアノテーション・プロセッサーによって生成される Criteria Metamodel クラス・ファイルを、エンティティー・クラス・ファイルと同じロケーションにある JAR ファイルに組み込む必要があります。
注: WSJPA および IBM® Optim™ PureQuery Runtime を使用している場合は、persistence_unit_name.pdqxml ファイルを JPA アプリケーション JAR ファイルに追加します。
このファイルは、persistence.xml ファイルのある META-INF ディレクトリーと同じディレクトリーにあります。これらのパーシスタンス・ファイルは、『Java SE 環境用の JPA アプリケーションの開発』の開発タスクで作成されたものです。
アプリケーションをパッケージ化するには、次のコマンドを使用します。
jar -cvf ${jar_Name} ${entity_Path}
ここで、
${jar_Name} は作成する JAR ファイルの名前を表し、${entityPath} は各エンティティーをコンパイルしたそのエンティティーがあるルートの場所を表します。${entity_Path} に META-INF/persistence.xml ファイルも含まれていることを確認してください。
- スタンドアロンのアプリケーションを実行する場合は、アプリケーションの開始時に、クラスパスに JAR ファイルを指定します。 JPA ランタイムは、スタンドアロン JAR ファイル com.ibm.ws.jpa-2.1.thinclient_9.0.jar または com.ibm.ws.jpa-2.0.thinclient_9.0.jar のいずれかを開始します。 例えば、スタンドアロン・アプリケーション com.xyz.Main を実行するには、以下の Java
呼び出しを使用します。
java -cp /your/directory/${jar_Name}
-javaagent:${app_client_root}/runtimes/com.ibm.ws.jpa-2.1.thinclient_9.0.jar com.xyz.Main