前へ 目次 索引 DocHome 次へ |
iPlanet Application Server 管理者ガイド |
第 10 章 CORBA ベースクライアントサポートの有効化
以前のバーションの iPlanet Application Server では、RMI/IIOP プロトコルを介しての EJB へのアクセスには、組み込みの Javasoft ORB のみがサポートされていました。現在のバージョンの iPlanet Application Server では、Javasoft ORB だけでなく、IONA Technologies 製のサードパーティ ORB である ORBIX 2000 もサポートされます。つまり、CORBA 要素をサーバ側に提供するときに、組み込み Javasoft ORB または ORBIX 2000 を選択できるようになりました。この節では、次のどちらかの ORB を使って EJB にアクセスする CORBA ベースクライアントのための RMI/IIOP サポートを設定する方法について説明します。
この節では次のトピックについて説明します。
Javasoft ORB サポートの設定
Javasoft ORB サポートの設定
CORBA ベースクライアントが Internet Inter-ORB Protocol (IIOP) を経由して、KJS プロセスによって管理される EJB と直接通信するには、iPlanet Application Server に CXS (Bridge) プロセスを追加する必要があります。通常、リクエストは、そのリクエストを出した Web ブラウザの Web パスを通じて行われ、JSP および Servlet によって処理され、さらに EJB にアクセスします。この Web パスでは HTTP プロトコルが使われます。CORBA ベースクライアントの場合、リクエストは、JavaSoft ORB を介し、CORBA Execute Server (CXS) を使って EJB に直接転送されます。CXS は、iPlanet Application Server 内で CORBA ベースクライアントと EJB との間でブリッジとして機能する Java エンジンです。CORBA ベースクライアントの開発および配置については、『開発者ガイド』を参照してください。次の図は、iPlanet Application Server 内の通信アーキテクチャ、および CXS ブリッジプロセスを使った CORBA ベースクライアントと EJB サーバの通信を示しています。
図 10-1    iPlanet Application Server 通信アーキテクチャ
CXS (ブリッジ) プロセスを追加するには、次の手順を実行します。
iASAT ツールバーの「一般」をクリックして「一般」ウィンドウを開きます。
「一般」ウィンドウの左側のペインで、CXS プロセスを追加する iPlanet Application Server インスタンスを選択します。
「ファイル」メニューから「新規」>「プロセス」をクリックします。
「処理タイプ」ドロップダウンボックスで「CXS」を選択します。
「ポート」テキストボックスで、追加のプロセスを実行する未使用のポート番号を指定します。これは、内部 iPlanet Application Server エンジンポートです。
「IIOP ポート」テキストボックスで、CORBA ベースクライアントが CXS との通信に使うポート番号を指定します。これは、CXS が CORBA ベースクライアントを待機するポートです。
このプロセスをシングルスレッド環境で使う場合は、次の手順を実行します。
「変更の適用」をクリックして変更を保存します。
ORBIX2000 サポートの設定
この節では、ORBIX 2000 サポートを利用するために iPlanet Application Server を設定する方法について説明します。この節では次のトピックについて説明します。Windows NT で ORBIX サポートを設定するには
Solaris 上で ORBIX サポートを設定するには
Solaris 上で ORBIX 2000 サポートを設定するには、次の手順を実行します。
ORBIX 2000 バージョン 1.2.1 をインストールします。
ライセンスファイルをマシンにコピーし、ライセンスをインストールします。ライセンスのインストールの詳細については、http://www.iona.com にある ORBIX のマニュアルを参照してください。
次の手順で、セキュリティサービスのインターセプタをコンフィグレーションファイルに追加する必要があります。
- ORBIX のデフォルトのドメイン設定は、localhost です。このドメイン設定は、iPlanet Application Server および CORBA 要素が同じマシン上で動作しているときに使うことができます。iPlanet Application Server と CORBA 要素が別々のマシン上で動作している場合は、新しい設定ドメインをファイルベースまたはリポジトリベースで作成する必要があります。ファイルベースでドメインを作成した場合は、サービスに関連する設定の詳細はすべて構成ファイルに保存されます。このファイルは、ドメインの作成に必要な手順を実行した後に作成されます。
- 詳細は、『ORBIX 管理者ガイド』を参照してください。
作成したコンフィグレーションファイルの server_binding_list に、サーバのインターセプタ名 iASServerInterceptor をグローバル・スコープで追加します。
共通環境変数ファイル iasenv.ksh を変更して、マシン上の ORBIX 設定の場所を iPlanet Application Server に認識させます。
インターセプタ portable_interceptor をコンフィグレーションファイルの orb_plugins エントリに追加します。
- たとえば、サーバのインターセプタ名を追加する前は、コンフィグレーションファイルの関連するエントリは次のようになっています。
- binding:server_binding_list=[OTS]
- iASServerInterceptor をサーバのインターセプタ名として追加すると、コンフィグレーションファイルのエントリは次のようになります。
- binding:server_binding_list=[iASServerInterceptor, OTS]
iasenv.ksh を開きます。ORBIX Configuration Settings のコメントの下にある ORBIX 設定のセクションに移動します。
orb.properties ファイル内の次のプロパティを変更します。このファイルは iASInstallDir/ias/usr/java/jre/lib にあります。次の変数に、ORBIX のインストール先ディレクトリの名前を指定します。
次の変数に、ORBIX のライセンスファイル licenses.txt をコピーしたディレクトリの名前を指定します。
次の変数に、ORBIX 設定ドメイン名を指定します。
次の変数に、ORBIX 設定ドメインファイルへのパスを指定します。
次の変数に、CXS (Corba Executive Server) 間でロードバランサを有効にするかどうかを指定します。このロードバランサは、サーバサイドの RMI/IIOP プロセスです。
次に示すように、iasenv.ksh の JAVA_ARGS 変数は、JavaSoft ORB が使われるように設定されています。
- JAVA_ARGS=-Xss512k -Xms64m -Xmx64m
- ORBIX を利用するには、次のように、この変数のコメントを解除する必要があります。
- ##JAVA_ARGS=(-Xss512k -Xms64m -Xmx64m) -DBridge_ORB_CLASS=com.iona.corba.art.artimpl.ORBImpl -DORBIXLoadBalancing=$ORBIX_LOADBALANCING -Xbootclasspath/a:$IT_PRODUCT_DIR/orbix_art/1.2/classes/omg.jar -DORBdomain_name=$ORBIX_DOMAIN_NAME -DORBconfig_domains_dir=$ORBIX_CONFIG_DOMAINS_DIR -Dorg.omg.PortableInterceptor.ORBInitializerClass.com.iplanet.ias.iona.orbinitializers.IONAServerORBInitializerImpl=
- ふたたび JavaSoft を利用する場合は、この変数をコメントに戻します。
org.omg.CORBA.ORBSingletonClass=com.iona.corba.art.artimpl.ORBSingleton
ORBIX 環境変数を設定するために、コマンドラインから次のコマンドを実行します。各コマンドは、ピリオド (.) とそれに続くスペースで始めます。
次のコマンドを実行して、ORBIX サービスを開始します。
- . <orbix installation directory>/bin/<domain name>_env
- . <orbix installation directory>/bin/<domain name>_java_env
- たとえば、ドメイン名が「Marigold」の場合は、次のように指定します。
- . <orbix installation directory>/bin/marigold_env
- . <orbix installation directory>/bin/marigold_java_env
必要なアプリケーションを配置します。iPlanet Application Server を配置して再起動したときにスタブとタイが再生成されることを確認します。
- <orbix installation directory>/bin/start_<domain name>_services
- たとえば、ドメイン名が「Marigold」の場合は、次のように指定します。
- /space/iona/bin/start_marigold_services
- CXS エンジンは、登録が完了すると、クライアントサイドオブジェクトグループのオブジェクトの処理を開始します。RMI/IIOP ORB は、リクエストを CXS エンジンに送信します。CXS エンジンが停止している場合でも、リクエストを送信し続けます。この現象を回避するには、登録した CXS エンジンがすべて動作していなければなりません。通常、KAS (Administrative Server) は、障害が発生したサーバエンジンプロセスを再起動します。ただし、CXS エンジンが無効になっているか、削除されているか、起動していない (KAS が起動していない場合に発生する) 場合は、CXS エンジンのオブジェクトをすべてのオブジェクトグループから削除することをお勧めします。CXS エンジンのオブジェクトを削除するには、以下のコマンドを使います。
- CXS エンジンによって処理されている現在のオブジェクトグループを一覧表示するには
- itadmin nsog list
- 現在のメンバーを一覧表示するには
- itadmin nsog list_members <Group Name>
- 特定のメンバーを削除するには (メンバー名はエンジン番号と同じ)
- itadmin nsog remove <GroupName>
- または
- itadmin nsog remove_member -og_name <GroupName> <engine no>
- 削除を確認するには
- itadmin nsog list_members <Group Name>
- <group name> は ejb-name + Group です。
Windows NT で ORBIX サポートを設定するには
Windows NT で ORBIX サポートを設定するには、次の手順を実行します。
ORBIX 2000 バージョン 1.2.1 をインストールします。
クライアントサイドの CORBA プログラミングについては、『開発者ガイド』を参照してください。ライセンスファイルをマシンにコピーし、ライセンスをインストールします。詳細は、http://www.iona.com にある ORBIX のマニュアルを参照してください。
iPlanet レジストリを次のように変更します。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥Java¥ClassPath=<path to ORBIX license file >;<path to ORBIX domain configuration file>;<ClassPath>;<orbix_inst_dir>¥orbix_art¥1.2¥classes¥orbix2000.jar;<orbix_inst_dir>¥orbix_art¥1.2¥localhost
注 <orbix_inst_dir> は、ORBIX のインストールディレクトリです。
<orbix_inst_dir>¥orbix_art¥1.2¥classes¥orbix2000.jar は、ORBIX の実装 JAR ファイル orbix2000.jar のパスです。
<ClassPath> は、iPlanet レジストリ内の既存の指定です。
iPlanet レジストリのキーを変更する方法については、「iPlanet レジストリエディタについて」を参照してください。
iPlanet Application Server と CORBA クライアントが別々のマシン上で動作している場合は、ORBIX サービスが動作しているマシンに新しい設定ドメインを作成する必要があります。ドメイン設定は、ファイルベースまたはリポジトリベースで生成できます。詳細は、『ORBIX 管理者ガイド』を参照してください。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥Java¥JavaArgs = -Xbootclasspath/a:<orb_inst_dir>¥orbix_art¥1.2¥classes¥omg.jar
- -DIASORBCLASS=com.iona.corba.art.artimpl.ORBImpl
- -DORBdomain_name=domain name
- -DORBconfig_domains_dir=<path to ORBIX domain configuration file>
- -Dorg.omg.PortableInterceptor.ORBInitializerClass.com.iplanet.ias.iona.orbinitializers.IONAServerORBInitializerImpl=
- -DORBIXLoadBalancing=true
注
次の手順で ORBIX の構成ファイルを変更し、セキュリティサービスを有効にする必要があります。
- ファイルベースでドメインを作成した場合は、ORBIX サービスに関連する設定の詳細は構成ファイルに保存されます。このファイルは、特定のパスに設定ドメインを作成するときに作成されます。
- 新しい設定ドメイン名と設定ドメインファイルのパスで、次の iPlanet レジストリを更新する必要があります。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥Java¥JavaArgs = -DORBdomain_name=domain_name -DORBconfig_domains_dir=domain_path
- たとえば、設定ドメイン名が 「Marigold」 で、ドメイン設定ファイルがパス D:¥iona¥domains に保存されている場合は、iPlanet レジストリキーを次のように変更する必要があります。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥Java¥JavaArgs = -DORBdomain_name=marigold -DORBconfig_domains_dir=D:¥iona¥domains
構成ファイルの server_binding_list に、サーバのインターセプタ名 iASServerInterceptor をグローバル・スコープで追加します。
CXS 間のロードバランサは、デフォルトで有効になっています。ロードバランサを無効にするには、iPlanet レジストリ内の次の JavaArgs 引数を False に設定します。
インターセプタ portable_interceptor をコンフィグレーションファイルの orb_plugins エントリに追加します。
- たとえば、サーバのインターセプタ名を追加する前は、コンフィグレーションファイルの関連するエントリは次のようになっています。
- binding:server_binding_list=[OTS]
- iASServerInterceptor をサーバのインターセプタ名として追加すると、コンフィグレーションファイルのエントリは次のようになります。
- binding:server_binding_list=[iASServerInterceptor,OTS]
orb.properties ファイル内の次のプロパティを変更します。このファイルは iASInstallDir/ias/usr/java/jre/lib にあります。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥Java¥JavaArgs =ORBIXLoadBalancing = false
- CXS エンジンは、登録が完了すると、クライアントサイドオブジェクトグループのオブジェクトの処理を開始します。RMI/IIOP ORB は、リクエストを CXS エンジンに送信します。CXS エンジンが停止している場合でも、リクエストを送信し続けます。この現象を回避するには、登録した CXS エンジンがすべて動作していなければなりません。通常、KAS (Administrative Server) は、障害が発生したサーバエンジンプロセスを再起動します。ただし、CXS エンジンが無効になっているか、削除されているか、起動していない (KAS が起動していない場合に発生する) 場合は、CXS エンジンのオブジェクトをすべてのオブジェクトグループから削除することをお勧めします。CXS エンジンのオブジェクトを削除するには、以下のコマンドを使います。
- CXS エンジンによって処理されている現在のオブジェクトグループを一覧表示するには
- itadmin nsog list
- 現在のメンバーを一覧表示するには
- itadmin nsog list_members <Group Name>
- 特定のメンバーを削除するには (メンバー名はエンジン番号と同じ)
- itadmin nsog remove <GroupName>
- または
- itadmin nsog remove_member -og_name <GroupName> <engine no>
- 削除を確認するには
- itadmin nsog list_members <Group Name>
- <group name> は ejb-name + Group です。
org.omg.CORBA.ORBSingletonClass=com.iona.corba.art.artimpl.ORBSingleton
必要なアプリケーションを配置します。アプリケーションを配置するときにスタブとタイが再生成されることを確認します。
コマンドプロンプトから次のコマンドを実行して、ORBIX 環境変数を設定します。
コマンドプロンプトで次のコマンドを実行して、ORBIX サービスを起動します。<orbix installation directory>/bin/start_<domain name>_services.bat
- <orbix installation directory>/bin/<domain name>_env.bat
- <orbix installation directory>/bin/<domain name>_java_env.bat
- たとえば、ドメイン名が「Marigold」の場合は、次のように指定します。
- <orbix installation directory>/bin/marigold_env.bat
- <orbix installation directory>/bin/marigold_java_env.bat
前へ 目次 索引 DocHome 次へ
Copyright © 2002 Sun Microsystems, Inc. All rights reserved.
最新更新日 2002 年 3 月 6 日