このタスクについて
J2EE アプリケーション・クライアント・プログラムの動作は、自身の Java 仮想マシン (JVM) コードを実行し、その main メソッドで呼び出されるという点で、標準
の J2EE プログラムに類似しています。
J2EE アプリケーション・クライアント
・プログラムの動作は、自身の ASCII Java 仮想マシン・コードを実行し、その main
メソッドで呼び出されるという点で、標準の J2EE プログラムに類似しています。
この JVM ランタイム環境はクライアント・コンテナーの一部であり、アプ
リケーション・クライアントのために以下のサービスを提供します。
- セキュリティー
- 通信プロトコル・サポート (RMI/IIOP、HTTP など用)
- ネーミング・サポート
Java 仮想マシン・アプリケーション・クライアント・プログラムが、標準の Java プログラムと異なる点は、リソースにアクセスするために Java Naming and Directory Interface (JNDI) ネーム・スペースを使用するということです。
標準の Java プログラムでは、リソースの情報はプログラム内にコーディングされます。
リソースの情報をクライアント・アプリケーション・プログラムとは別の場所に保管することは、
クライアント・アプリケーション・プログラムを移植可能にし、柔軟性を高めることにつながります。
- クライアント・アプリケーション・プログラムを作成します。 J2EE アプリケーション・クライアント・プログラムを任意の開発用マシンで作成します。
この段階では、WebSphere Application Server にアクセスする必要はありません。
規則: z/OS 上で稼働するクライアント・アプリケーション・プログラムを作成する場合は、以下の規則が適用される。
- クライアント・プログラムは独自のトランザクションを開始できるが、
WebSphere Application Server for z/OS ランタイム内のトランザクションに参加したり、
そのトランザクションを開始したりすることはできない。
- アプリケーション・クライアント・コードには、main メソッドが含まれている必要がある。
- クライアント・ランタイムは ASCII JVM で実行するため、
アプリケーション・クライアントのすべての入出力ファイルは ASCII でなければならない。
javax.naming.InitialContext クラスの使用により、
クライアント・アプリケーション・プログラムはルックアップ操作を使って、JNDI ネーム・スペースにアクセスします。InitialContext クラスは、リソースを見付けるための lookup メソッドを提供します。
以下の例では、
クライアント・アプリケーション・プログラムによる InitialContext クラスの使用方法を示します。
import javax.naming.*
public class myAppClient
{
public static void main(String argv[])
{
InitialContext initCtx = new InitialContext();
Object homeObject = initCtx.lookup("java:comp/env/ejb/BasicCalculator");
BasicCalculatorHome bcHome = (BasicCalculatorHome) javax.rmi.PortableRemoteObject.narrow(homeObject, BasicCalculatorHome.class);
BasicCalculatorHome bc = bcHome.create(); ...
}
}
この例では、プログラムは、BasicCalculator と呼ばれるエンタープライズ Bean を検索します。
BasicCalculator EJB 参照は
、java:comp/env/ejb/BasicCalculator のクライアント JNDI ネーム・スペースにあります。実際
の Enterprise JavaBeans はサーバー上で実行されるので、アプリケーション・クライアント・ランタイムは
、BasicCalculator のホーム・インターフェースへの参照を戻します。
クライアント・アプリケーション・プログラムのルックアップがリソース参照または環境エントリーに対するものであった場合は、
ルックアップ機能は、クライアント・アプリケーションのデプロイメント記述子で定義された構成タイプのインスタンスを戻します。
例えば、プログラムのルックアップが JDBC データ・ソースであった場合は、
ルックアップは javax.sql.DataSource のインスタンスを戻します。デプロイメント記
述子ファイルの編集は可能ですが、管理コンソールを使用してこれを変更しないでください。
- アセンブリー・ツールを使用してアプリケーション・クライアントをアセンブルします。
JNDI ネーム・スペースは、
アセンブリー・ツールによってアセンブルされた情報を基に、ルックアップに対して戻すべきものを認識します。
J2EE アプリケーション・クライアントを、アセンブリー・ツールがインストールされている任意の開発マシン上でアセンブルします。
アプリケーション・クライアントをアセンブルする場合は、
アプリケーション・クライアント・ランタイムに必要な情報を与えて、
クライアント・アプリケーション・プログラム用の実行環境を初期化します。
インプリメンテーションの詳細については、アセンブリー・ツールの資料を参照してください。
クライアント・アプリケーション・プログラムが使用するリソースを構成する場合に、以下を留意してください。
- リソース環境参照は、リソース参照とは異なります。
リソース環境参照を使用すると、アプリケーション・クライアントが論理名を使用して、
サーバー JNDI ネーム・スペースにバインドされているリソースをルックアップできます。
リソース参照を使用すると、アプリケーションは論理名を使用して、
ローカル J2EE リソースをルックアップできます。J2EE 仕様では、リソースの特定のインプリメンテーションを指定しません。
次の表にはサポートされるリソース・タイプが含まれており、
これで、WebSphere Application Server によってクライアント・インプリメンテーションが提供されるリソースを識別します。
リソース・タイプ |
クライアント構成のメモ |
WebSphere Application Server によって提供されるクライアント・インプリメンテーション |
javax.sql.DataSource |
任意のデータ・ソース・インプリメンテーション・クラスの仕様をサポートします
|
いいえ |
java.net.URL |
カスタム・プロトコル・ハンドラーの仕様をサポートします |
Java ランタイム環境ファイルによって提供されます |
javax.mail.Session |
カスタム・プロトコル構成をサポートします |
あり - POP3、SMTP、IMAP |
javax.jms.QueueConnectionFactory, javax.jms.TopicConnectionFactory,
javax.jms.Queue, javax.jms.Topic |
WebSphere 組み込みメッセージング
、IBM MQ Series、および他の JMS プロバイダーの構成をサポートします |
あり - WebSphere 組み込みメッセージング |
- エンタープライズ・アーカイブ (EAR) ファイルをアセンブルします。
アプリケーションは、Enterprise Archive ファイルまたは .ear ファイルに入っています。
.ear ファイルは以下のものから構成されています。
- エンタープライズ Bean、アプリケーション・クライアント、
およびユーザー定義のモジュールまたは .jar ファイル
- Web アプリケーション (.war) ファイル
- アプリケーションを説明するメタデータ (.xml) ファイル
サーバー・マシン上で .ear ファイルをアセンブルする必要があります。
- EAR ファイルを配布します。
このクライアントを実行するように構成されたクライアント・マシンには、
.ear ファイルへのアクセス権が必要です。
ユーザーの環境の中のすべてのマシンが同じイメージおよびプラットフォームを共用している場合には、
アプリケーション・クライアント・リソース構成ツール (ACRCT) を 1 つのマシンで実行して外部リソースを構成し、
次に、構成された .ear ファイルを他のマシンに配布します。
ユーザーの環境が各種のクライアント・システムおよびプラットフォームでセットアップされている場合には、
それぞれの固有の構成ごとに ACRCT を実行します。
.ear ファイルは、正しいクライアント・マシンに配布するか、
あるいはネットワーク・ドライブ上で使用可能にすることができます。
.ear ファイルの配布は、システム管理者およびネットワーク管理者が担当します。
- アプリケーション・クライアントをデプロイします。
- アプリケーション・クライアント・リソースを構成します。
クライアント・アプリケーションが
ローカル・リソースを定義する場合は、ACRCT (clientConfig コマンド) をローカル・マシンで実行して、
.ear ファイルを再構成します。ACRCT を使用して構成を変更します。
例えば、.ear ファイルには C:¥DB2 のように構成される DB2 リソースが入っていることがあります。
しかし、DB2 をディレクトリー D:¥Program Files¥DB2 にインストールしている場合は、
ACRCT を使用して .ear ファイルのローカル版を作成します。
アプリケーション・クライアントをデプロイします。 z/OS 上にクライアントをデプロイする場合は、
アプリケーション・クライアント・リソース構成ツール (ACRCT) の実行につ
いて、以下の 2 つのオプションがあります。
どちらのオプションでも出力は同じであり、ツール・インターフェー
スのみが異なります。ACRCT for z/OS がスクリプト・インターフェースを使用してい
るのに対し、Windows 用 ACRCT はグラフィカル・ユーザー・インターフェー
ス (GUI) を備えています。
WebSphere 管理コンソールを使用して、z/OS にアプリケーション・クライアントをインストールします。