ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Serverスタンドアロン・クライアントのプログラミング
11g リリース1(10.3.5)
B61622-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

13 Java EEクライアント・アプリケーション・モジュールの使用

Java EEでは、クライアント・アプリケーション・コード(クライアント・モジュール)の標準をEARファイルで指定します。これにより、アプリケーションのクライアント側を他のモジュールとともにパッケージ化したアプリケーションを作成できます。

クライアント・モジュールは、EARのMETA-INF/application.xmlファイルで<javaタグを使用して宣言します。『Oracle WebLogic Serverアプリケーションの開発』のエンタープライズ・アプリケーションのデプロイメント記述子の要素に関する項を参照してください。


注意:

<java>タグを、サーバー側モジュールで使用できるJavaコードの宣言と間違えないよう注意してください。これは目的とは異なります。サーバー側コンテナの外で実行されるクライアント側コードを宣言するために使用されます。

クライアント・モジュールは、基本的にはMETA-INF/application-client.xmlという特別なデプロイメント記述子を含むJARファイルです。このクライアントJARファイルのMETA-INF/MANIFEST.MFファイルには、プログラムのエントリ・ポイントを指定するMain-Classエントリも含まれます。application-client.xmlファイルの詳細は、付録A「クライアント・アプリケーションのデプロイメント記述子の要素」を参照してください。

次の項では、クライアント・アプリケーション・モジュールの使用について説明します。

クライアント・アプリケーションの展開

WebLogic Serverは、クライアント・モジュールの使用を容易にする次のユーティリティを備えています。

Java EE EARファイルからクライアント側JARファイルを展開して、デプロイ可能なJARファイルを作成するには、weblogic.ClientDeployerユーティリティを使用します。weblogic.ClientDeployerクラスは、Javaコマンド・ラインで次の構文を使用して実行します。

java weblogic.ClientDeployer ear-file client1 [client2 client3 ...]

ear-file引数は、拡張子.earを持つJavaアーカイブ・ファイルか、1つまたは複数のクライアント・アプリケーションJARファイルが格納されている展開されたディレクトリです。

client引数には、展開するクライアントを指定します。weblogic.ClientDeployerユーティリティは、ここに指定したクライアントごとに、指定した名前のJARファイル(拡張子.jarを含む)をEARファイル内から検索します。

たとえば、次のコマンドを実行するとapp.earからmyclient.jarを展開します。

java weblogic.ClientDeployer app.ear myclient

myclient.jarが展開されると、weblogic.ClientDeployerユーティリティが2つの操作を実行します。


注意:

モジュールのMETA-INF/application-client.xmlデプロイメント記述子のエントリのバインディングを定義するには、クライアント・プログラムの<client>.runtime.xml記述子を作成します。

クライアント・アプリケーションの実行

EARファイルからクライアント側のJARファイルを展開したら、weblogic.j2eeclient.Mainユーティリティを使用してクライアント側アプリケーションをブートストラップし、次のコマンドを使用してWebLogic Serverインスタンスを指すようにします。

java weblogic.j2eeclient.Main clientjar URL [application args]

例:

java weblogic.j2eeclient.Main myclient.jar t3://localhost:7001

weblogic.j2eeclient.Mainユーティリティによって、クライアント・コード内のjava:comp/envからアクセス可能なコンポーネント環境が作成されます。

application-client.xml記述子に記述されているリソースが次のいずれかに該当する場合、あらかじめmyclient.runtime.xmlファイルに指定された情報に基づいて、weblogic.j2eeclient.MainクラスはサーバーのグローバルJNDIツリーからjava:comp/envへのバインドが試行されます。

ユーザー・トランザクションは、java:comp/UserTransactionにバインドされます。

application.xmlデプロイメント記述子の<res-auth>タグは、現時点では無視され、applicationと入力されます。現時点では、フォームベースの認証はサポートされていません。

残りのクライアント環境は、weblogic.ClientDeployerユーティリティによって作成されたweblogic-application-client.xmlファイルからバインドされます。

バインディングが見つからない場合や不完全な場合は、weblogic.j2eeclient.Mainクラスからエラー・メッセージが出力されます。

環境が初期化されると、weblogic.j2eeclient.MainユーティリティがMain-ClassエントリのJARクライアントのJARマニフェストを検索します。このクラスのmainメソッドを呼び出すと、クライアント・プログラムが起動します。URL引数の後ろでweblogic.j2eeclient.Mainユーティリティに渡したすべての引数は、クライアント・アプリケーションに渡されます。

アプリケーション用に作成したJavaクラス、およびそのアプリケーションが依存するすべてのJavaクラス(WebLogic Serverクラスを含む)は、クライアントJVMから使用できるようにしておく必要があります。クライアント・アプリケーションをステージするには、クライアントで必要とするすべてのファイルを特定のディレクトリにコピーし、そのディレクトリをJARファイルにバンドルします。クライアント・アプリケーション・ディレクトリの最上位には、アプリケーションを起動するためのバッチ・ファイルやスクリプトを格納できます。JavaクラスとJARファイルを保持するクラスまたはサブディレクトリを作成し、起動スクリプトのクライアントクラス・パスに追加します。

Javaクライアント・アプリケーションにJRE (Java Runtime Environment)をパッケージ化することもできます。


注意:

クライアント・モジュールJARで使用するClass-Pathマニフェスト・エントリは移植できません。これは、Java EE標準で未対応であるためです。