Jakarta EEアプリケーションクライアントを運用する場合、以下のように操作してください。
以下に各操作について説明します。
1. クライアントJARファイルの生成
以下のファイル構成でクライアントJARファイルを生成してください。
ファイル構成 | 説明 | |
---|---|---|
クラスファイル | Jakarta EEアプリケーションクライアントのクラスファイル | |
META-INF | MANIFEST.MF | マニフェストファイル |
application-client.xml | deployment descriptorファイル | |
glassfish-application-client.xml | GlassFish Serverのdeployment descriptorファイル |
Jakarta EEアプリケーションクライアントには、メインクラスが必要です。メインクラスとメインクラスから利用するクラスをクライアントJARファイルに含めてください。
メインクラスの作成方法については「3.1.5 クライアントアプリケーションの作成方法」を参照してください。
マニフェストファイルにはJakarta EEアプリケーションクライアントのメインクラスを定義してください。
マニフェストファイルの定義方法については「3.1.5 クライアントアプリケーションの作成方法」を参照してください。
Jakarta EEアプリケーションクライアントのdeployment descriptorファイル(application-client.xml)を定義します。このファイルは必須ではないため、必要な場合だけ作成してください。
GlassFish ServerクラスターではGlassFish Serverのdeployment descriptor (glassfish-application-client.xml)を定義することによって、Jakarta EEアプリケーションクライアントの動作を拡張することが可能です。このファイルは必須ではないため、必要な場合だけ作成してください。詳細は、「3.2.1 GlassFish Serverのdeployment descriptor」を参照してください。
2. EARファイルの生成
Jakarta EEアプリケーションクライアントから参照するアプリケーションがある場合、Jakarta EEアプリケーションクライアントおよびJakarta EEアプリケーションクライアントから参照するアプリケーションを1つのEARファイルにパッケージして配備してください。
その際、Jakarta EEアプリケーションクライアントのマニフェストファイルのClass-Pathに、参照するアプリケーションのファイルをEARファイルのルートからの相対パスで設定してください。
例
Jakarta EEアプリケーションクライアントを以下のファイル構成で配備する場合
ファイル構成 | 説明 | |||
---|---|---|---|---|
MyApplication.ear | EARファイル | |||
| MyClient.jar | Jakarta EEアプリケーションクライアント | ||
| com.mycompany.client.MyClass | メインクラス | ||
META-INF | ||||
| MANIFEST.MF | Jakarta EEアプリケーションクライアントのマニフェストファイル | ||
MyEjb.jar | Jakarta EEアプリケーションクライアントが参照するejb-jarファイル | |||
Module.jar | Jakarta EEアプリケーションクライアントが参照するJARファイル | |||
META-INF | ||||
| MANIFEST.MF | EARファイルのマニフェストファイル |
MyClient.jarがMyEjb.jar、Module.jarを参照する場合、MyClient.jarのMANIFEST.MFに以下のように定義してください
Main-Class: com.mycompany.client.MyClass Class-Path: MyEjb.jar Module.jar
3. 配備
ファイルをDASまたはGlassFish Serverクラスターに配備してください。
4. クライアントスタブJARファイルをダウンロード
配備時に生成されるクライアントスタブJARファイルおよびJakarta EEアプリケーションクライアントの実行に必要なファイルを内包するディレクトリーをダウンロードしてください。
JARファイルおよびJakarta EEアプリケーションクライアントの実行に必要なファイルを内包するディレクトリーのダウンロードには以下の方法があります。
asadminコマンドのdeployサブコマンドでEARファイルを配備する際に、「--retrieve」オプションを指定してダウンロードする
asadminコマンドのget-client-stubsサブコマンドでダウンロードする
クライアントスタブJARファイルおよびJakarta EEアプリケーションクライアントの実行に必要なファイルを内包するディレクトリーのダウンロードは配備担当者の権限が必要です。配備担当者がダウンロードした後、利用ユーザーへクライアントスタブJARファイル、およびJakarta EEアプリケーションクライアントの実行に必要なファイルが内包されているディレクトリーを配布してください。
なお、ディレクトリーの構成は下記のようになります。
ダウンロードしたクライアントスタブJARファイルから参照されるクライアントスタブJARファイル
サブモジュール(ejb-jarファイル、および、Jakarta EEアプリケーションクライアント)
サブモジュール内のマニフェストファイルのクラスパスに定義されたライブラリー
application.xmlのlibrary-directoryタグで指定したディレクトリーに格納されたライブラリー、または、library-directoryタグを省略した場合は、earファイルのlibディレクトリーに格納されたライブラリー
なお、クライアントスタブJARファイルが生成されるため、取得したファイル全体のファイルサイズは配備したアプリケーションより増加する場合があります。
asadminコマンドの詳細は、「11.1 asadmin」を参照してください。
5. Jakarta EEアプリケーションクライアントの実行
アプリケーションクライアントコンテナを起動してJakarta EEアプリケーションクライアントを実行する場合にはappclientコマンドを使用します。以下のようにダウンロードしたクライアントスタブJARファイルを指定してappclientコマンドを実行してください。以下はクライアントスタブJARファイルがMyApplicationClient.jarファイルの場合です。appclientコマンドの詳細は、「11.3 appclient」を参照してください。
C:\Interstage\glassfish5\glassfish\bin\appclient -client MyApplicationClient.jar -xml glassfish-acc.xml |
/opt/FJSViaps/glassfish5/glassfish/bin/appclient -client MyApplicationClient.jar -xml glassfish-acc.xml |
各種リソースにアクセスするJakarta EEアプリケーションクライアントが停止した場合、各リソースの接続プールでプーリングされている接続の解放処理が行われません。
JDBCリソースの接続に対して解放処理が行われなかった場合の影響については、データベースもしくはJDBCドライバのマニュアルを参照してください。Java DBを使用している場合、停止したタイミングでシステム運用資産は回収されるため問題ありません。
注意
Jakarta EEアプリケーションクライアントに渡す引数をダブルクォーテーション(")で囲う場合、ダブルクォーテーション(")で囲った引数の前後に必ず空白文字を指定してください。ただし最後の引数の後には空白文字は不要です。