WebSphere Application Server, Version 6.1   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows, Windows Vista

             目次と検索結果のパーソナライズ化

プラグ可能アプリケーション・クライアント

プラグ可能アプリケーション・クライアントには、エンタープライズ Bean と対話できる、軽量でダウンロード可能な Java アプリケーション・ランタイムが用意されています。

重要: プラグ可能アプリケーション・ クライアントは、Windows プラットフォームでのみ使用できます。

プラグ可能アプリケーション・クライアントでは、前もって Sun Java Runtime Environment (JRE) ファイルがインストールされている必要があります。その他のすべての点では、プラグ可能アプリケーション・クライアントとシン・アプリケーション・クライアントは似通っています。

このクライアントは、クライアント・マシン上で J2EE プラットフォームのオーバーヘッドなしで、 軽量の Java クライアント・アプリケーション・プログラミング環境を必要とするユーザーをサポートするために設計されています。 このクライアント用のプログラミング・モデルは、CORBA プログラミング・モデルの影響を強く受けていますが、エンタープライズ Bean へのアクセスをサポートします。

このクライアントからエンタープライズ Bean にアクセスするときに、 クライアント・アプリケーションは、エンタープライズ Bean オブジェクト参照を CORBA オブジェクトの参照と見なすことができます。

ツールは、クライアント上には存在せず、サーバー上に存在します。 クライアント・アプリケーションを開発し、 エンタープライズ Bean および CORBA オブジェクトに対して必要なクライアント・バインディングを生成し、 それらすべてをバンドルして、クライアント・マシンにインストールするのは、 ユーザーが行う作業です。

プラグ可能アプリケーション・クライアントは、クライアントとサーバーの間の通信ニーズをサポートするために必要なランタイムを提供します。

プラグ可能アプリケーション・クライアントは RMI-IIOP プロトコルを使用します。このプロトコルを使用することによって、クライアント・アプリケーションは、 エンタープライズ Bean 参照および CORBA オブジェクト参照にアクセスできるようになり、 サポートされている任意の CORBA サービスを使用できるようになります。 RMI-IIOP プロトコルの使用および CORBA サービスのアクセス可能性は、 エンタープライズ Bean 参照と CORBA オブジェクト参照の両方へアクセスする必要があるクライアント・アプリケーションを開発する際にユーザーを支援します。

J2EE と CORBA の環境を 1 つのクライアント・アプリケーションで組み合わせて使用する場合には、 2 つのプログラミング・モデルの違いを理解して、 それぞれを適切に使用し、管理する必要があります。

プラグ可能アプリケーション・クライアント・ランタイムは、オブジェクトの解決、セキュリティー、信頼性・可用性・保守性 (RAS)、およびその他のサービスについて、クライアント・アプリケーションに必要なサポートを提供します。しかし、これらのサービスへのアクセスを容易にするコンテナーはサポートしません。 例えば、エンタープライズ Bean またはローカル・リソース解決のためのニックネーム の使用に対するサポートはありません。 エンタープライズ Bean ソースへの解決 (Java Naming and Directory Interface (JNDI) API か CosNaming を使用する) の場合、クライアント・アプリケーションは、 参照がネーム・スペースにバインドされたときに使用されたネーム・サーバーの場所と完全修飾名を知っている必要があります。

ローカル・リソースへの解決の場合、 クライアント・アプリケーションは JNDI ルックアップを使用してリソースへ解決することはできません。 その代わりに、クライアント・アプリケーションは適切な API (JDBC、JMS、その他) を使ってリソースへの接続を明示的に作成する必要があります。 このクライアントは、 クライアント・アプリケーションが必要とするサービスに対する初期化は行いません。 例えば、クライアント・アプリケーションは、 CosNaming または JNDI API のいずれかを使用したネーミング・サービスの初期化を担当します。

プラグ可能アプリケーション・クライアントは、J2EE アプリケーション・クライアントで使用可能なクライアント・サービスのほとんどへのアクセスを提供します。 ただし、プラグ可能アプリケーション・クライアントのサービスには J2EE アプリケーション・クライアントの場合とは異なり、簡単にアクセスすることはできません。 J2EE クライアントは、必要なサービスまたはリソースにアクセスするのに単純な JNDI ネーム・スペース・ルックアップを実行すればよいという利点を持っています。 プラグ可能アプリケーション・クライアントは、クライアント・アプリケーションの各リソースについて明示的にコーディングをする必要があります。 例えば、エンタープライズ Bean の Home オブジェクトをルックアップするには、 J2EE アプリケーション・クライアントでは次のコードが必要です。

java.lang.Object ejbHome =
 initialContext.lookup("java:/comp/env/ejb/MyEJBHome");
MyEJBHome = (MyEJBHome)javax.rmi.PortableRemoteObject.narrow(ejbHome,  MyEJBHome.class);

ただし、Java 用のプラグ可能アプリケーション・クライアントでは、より明示的なコードを必要とします。

java.lang.Object ejbHome =
 initialContext.lookup("the/fully/qualified/path/to/actual/home/in/namespace/MyEJBHome");
MyEJBHome = (MyEJBHome)javax.rmi.PortableRemoteObject.narrow(ejbHome,  MyEJBHome.class);

この例では、J2EE アプリケーション・クライアントは、 java:/comp ネーム・スペースから論理名にアクセスします。 J2EE クライアント・ランタイムは、その名前を物理ロケーションに解決し、 参照をクライアント・アプリケーションに戻します。 プラグ可能クライアントは、 ネーム・スペース内のエンタープライズ Bean の Home オブジェクトの完全修飾された物理ロケーションを認識していなければなりません。 このロケーションが変更されると、 プラグ可能クライアント・アプリケーションは lookup() ステートメントに指定された値も変更する必要があります。

J2EE クライアントでは、クライアント・アプリケーションは、論理名を使用するので、 このような変更から保護されています。 変更により EAR ファイルの再デプロイメントが必要となる場合がありますが、 実際のクライアント・アプリケーションのコードは、変更されません。

プラグ可能アプリケーション・クライアントは、main 関数を含む従来型の Java アプリケーションです。 WebSphere プラグ可能アプリケーション・クライアントは、 リモート・エンタープライズ Bean にアクセスするためのランタイム・サポートと、 各種サービスのインプリメンテーションを提供します。 このクライアントは CORBA オブジェクトおよび CORBA ベースのサービスにもアクセスすることができます。 1 つのクライアント・アプリケーション内で両方の環境を使用する場合には、 エンタープライズ Bean と CORBA のプログラミング・モデルの相違を理解し、 両方の環境を管理する必要があります。

例えば、CORBA プログラミング・モデルでは、 ネーム・スペースでのオブジェクトの解決のために CORBA CosNaming ネーム・サービスを使用する必要があります。 エンタープライズ Bean プログラミング・モデルでは、JNDI ネーム・サービスを使用する必要があります。 クライアント・アプリケーションは、 これら 2 つのネーミング・サービスの使用を初期化し適切に管理する必要があります。

エンタープライズ Bean モデルには、もう 1 つの相違があります。 エンタープライズ Bean モデル内の JNDI インプリメンテーションを使用して、 オブジェクト・リクエスト・ブローカー (ORB) を初期化します。 クライアント・アプリケーションは、ORB が存在することを認識しません。 しかし、CORBA モデルでは、クライアント・アプリケーションが ORB.init() 静的メソッドを用いて ORB を明示的に初期化することが必要になります。

プラグ可能アプリケーション・クライアントは、CLASSPATH および JAVA_HOME の環境変数を設定してプラグ可能アプリケーション・クライアント・ランタイムを使用可能にするために使用できるバッチ・コマンドを提供します。




関連タスク
プラグ可能アプリケーション・クライアント・コードの実行
概念トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 5:05:53 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/ccli_pluggableclient.html