Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
ラウンドロビン検索をするために必要な設定とグループ名の命名規則などについて説明します。
ラウンドロビン検索をする場合,次の設定が必要です。
ラウンドロビン検索機能を使用するためには,システムプロパティに設定します。なお,InitialContextFactoryの実装を委譲しているクラスについては,システムプロパティの設定に加えて,各アプリケーションのInitialContext生成時に引数で指定することもできます。また,InitialContext生成時の引数では,システムプロパティに指定した論理ネーミングサービスのグループのうち,特定のネーミングサービスを選択して指定することもできます。
なお,システムプロパティだけで設定している場合は,特定のグループを指定したラウンドロビン検索はできません。論理ネーミングサービス上にある全グループのネーミングサービスが検索の対象となります。
ここでは,それぞれの設定方法の概要について説明します。
ラウンドロビン検索を実行する場合,システムプロパティに,ラウンドロビン検索の対象になる論理ネーミングサービスのグループと,グループに属するネーミングサービスのルート位置を指定します。また,InitialContextFactoryの実装を委譲しているクラスとして,java.naming.factory.initial=com.hitachi.software.ejb.jndi.GroupContextFactoryを指定する必要があります。
システムプロパティは,ラウンドロビン検索機能を利用するアプリケーションの種類ごとに,次の個所に設定方法が異なります。
J2EEサーバのプロパティをカスタマイズして設定します。設定は,簡易構築定義ファイルの,J2EEサーバ用のユーザプロパティに設定します。
ラウンドロビン検索をするための定義は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内に指定します。簡易構築定義ファイルでのラウンドロビン検索をするための定義について次の表に示します。
表2-31 簡易構築定義ファイルでのラウンドロビン検索をするための定義
指定するパラメタ | 設定内容 |
---|---|
ejbserver.jndi.namingservice.group.list | CORBAネーミングサービスのグループを指定します。 |
ejbserver.jndi.namingservice.group.<Specify group name>.providerurls | 各グループに属する,CORBAネーミングサービスのルート位置を指定します。 |
java.naming.factory.initial | InitialContextFactoryの実装をデレゲートしているクラスを指定します。 |
なお,ラウンドロビン検索は,ユーザ指定名前空間機能を使用していることが前提になります。ユーザ指定名前空間機能を使用する場合,サーバ管理コマンドの動作設定のカスタマイズと,J2EEアプリケーションのプロパティの定義が必要です。設定方法については,「2.6.7 実行環境での設定」および「2.6.5 Enterprise Beanの別名の設定」を参照してください。
次のどちらかの方法で設定します。
なお,EJBクライアントアプリケーションのプロパティの設定方法は,EJBクライアントアプリケーションの開始に使用するコマンドによって,EJBクライアントアプリケーションのプロパティの設定方法が異なります。EJBクライアントアプリケーションのプロパティの設定方法および指定例を説明します。
プロパティの設定方法は,cjclstartapコマンドを使用する場合とvbjコマンドを使用する場合で異なります。
指定例を次に示します。この例は,プロパティをusrconf.propertiesで指定する場合の指定例です。なお,それぞれのキーの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「14.3 usrconf.properties(Javaアプリケーション用ユーザプロパティファイル)」を参照してください。
# 論理ネーミングサービスの構成を定義 ejbserver.jndi.namingservice.group.list=g1;g2;g3 ejbserver.jndi.namingservice.group.g1.providerurls=corbaname::hostA:900;corbaname::hostB:900 ejbserver.jndi.namingservice.group.g2.providerurls=corbaname::hostD:700;corbaname::hostE:700 ejbserver.jndi.namingservice.group.g3.providerurls=corbaname::hostF:800;corbaname::hostG:800 # InitialContextFactoryの実装を委譲するクラスを指定 java.naming.factory.initial=com.hitachi.software.ejb.jndi.GroupContextFactory : |
指定例の中のejbserver.jndi.namingservice.group.listキー,ejbserver.jndi.namingservice.group.<Specify group name>.providerurlsキー,およびjava.naming.factory.initialキーには,それぞれ次の内容を指定します。
ラウンドロビン検索を実行する設定になっている場合に,クライアントアプリケーション内でInitialContext生成時の引数に特定のグループを指定することによって,ラウンドロビン対象でのルックアップ対象になるグループを選択できます。なお,InitialContext生成時の引数の指定は任意です。
指定例を次に示します。
: Hashtable env = new Hashtable(); env.put("ejbserver.jndi.namingservice.groupname", "g1"); env.put("java.naming.factory.initial", "com.hitachi.software.ejb.jndi.GroupContextFactory"); InitialContext ic = new InitialContext(env); : |
指定例の中のejbserver.jndi.namingservice.groupnameキーおよびjava.naming.factory.initialキーには,それぞれ次の内容を指定します。
グループ名に使用できる文字を次に示します。
なお,グループ名は,論理ネーミングサービス内で一意となる名称にしてください。
EJBクライアントアプリケーションのプロパティは,JavaアプリケーションからEnterprise Beanを呼び出す場合に使用されます。J2EEアプリケーションの内容に応じて,必要なプロパティを設定してください。設定できるプロパティについては,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。
ここでは,EJBクライアントアプリケーションのコマンド(vbjコマンド)によって指定の要否が異なるプロパティについて説明します。EJBクライアントアプリケーションのコマンドによって指定の要否が異なるプロパティのキーを次の表に示します。
表2-32 EJBクライアントアプリケーションのコマンドによって指定の要否が異なるプロパティのキー
プロパティのキー | 種別 | コマンド | |
---|---|---|---|
cjclstartap | vbj | ||
org.omg.CORBA.ORBClass | 固定 | − | − |
org.omg.CORBA.ORBSingletonClass | 固定 | − | − |
javax.rmi.CORBA.UtilClass | 固定 | − | ○ |
javax.rmi.CORBA.StubClass | 固定 | − | − |
javax.rmi.CORBA.PortableRemoteObjectClass | 固定 | − | ○ |
java.endorsed.dirs | 可変 | − | − |
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.