12.2.3 Javaアプリケーションに指定するシステムプロパティ
- 〈この項の構成〉
(1) 形式
Win32のバッチファイル形式(Windowsの場合),またはシェルスクリプトファイル形式(UNIXの場合)のファイルに指定します。
(2) 機能
vbjコマンドを使用する場合に,Javaアプリケーションを実行するJavaVMのシステムプロパティを指定します。
また,java.lang.System.setProperty()で定義する場合は,該当機能を最初に使う前までにプロパティの定義が必要になります。
Javaアプリケーションを実行中に,このファイルの内容を変更した場合,変更した内容は,次回Javaアプリケーションを起動したときに反映されます。
(3) 指定できるキー
vbjコマンドで指定できるキーを次の表に示します。
「関連情報」とは,指定したキーに関する情報の参照先です。マニュアル名称の「アプリケーションサーバ」を省略しています。
分類 |
キー名称 |
種別 |
指定可否 |
関連情報 |
---|---|---|---|---|
共通のキー |
ejbserver.client.ctm.RequestPriority |
選択 可変 |
○ |
|
ejbserver.client.ejb.log |
選択 可変 |
○ |
||
ejbserver.client.log.appid |
選択 可変 |
○ |
||
ejbserver.client.log.directory |
選択 可変 |
○ |
||
ejbserver.client.log.lockInterval |
選択 可変 |
○ |
||
ejbserver.client.log.lockRetryCount |
選択 可変 |
○ |
||
ejbserver.container.rebindpolicy |
選択 可変 |
○ |
「機能解説 基本・開発編(EJBコンテナ)」の「2.13 EJBのリモートインタフェースの呼び出し」 |
|
ejbserver.jndi.cache |
選択 可変 |
○ |
||
ejbserver.jndi.cache.interval |
選択 可変 |
○ |
||
ejbserver.jndi.cache.interval.clear.option |
選択 可変 |
○ |
||
ejbserver.jndi.namingservice.group.list |
選択 可変 |
○ |
||
ejbserver.jndi.namingservice.group.<Specify group name>.providerurls |
選択 可変 |
○ |
||
ejbserver.jndi.request.timeout |
選択 可変 |
○ |
||
ejbserver.logger.channels.define.<チャネル名>※.filenum |
選択 可変 |
○ |
||
ejbserver.logger.channels.define.<チャネル名>※.filesize |
選択 可変 |
○ |
||
ejbserver.logger.enabled.* |
選択 可変 |
○ |
||
ejbserver.rmi.request.timeout |
選択 可変 |
○ |
||
ejbserver.security.service.url |
選択 可変 |
○ |
||
ejbserver.serverName |
可変 |
○ |
||
ejbserver.server.prf.PRFID |
選択 可変 |
○ |
||
java.naming.factory.initial |
可変 |
○ |
||
java.naming.provider.url |
可変 |
○ |
||
vbroker.agent.enableLocator |
選択 可変 |
○ |
||
vbroker.orb.htc.comt.entryCount |
選択 可変 |
○ |
||
vbroker.orb.htc.comt.fileCount |
選択 可変 |
○ |
||
vbroker.orb.htc.tracePath |
選択 可変 |
○ |
||
独自のキー |
選択 可変 |
○ |
||
選択 可変 |
○ |
|||
可変 |
× |
|||
固定 |
○ |
|||
固定 |
○ |
|||
固定 |
○ |
|||
固定 |
× |
|||
固定 |
○ |
|||
固定 |
○ |
|||
固定 |
○ |
|||
固定 |
× |
|||
固定 |
× |
(a) 共通のキー
Javaアプリケーション用usrconf.propertiesファイルのキーと共通のシステムプロパティのキーです。
共通のキーの詳細については,「12.2.2 usrconf.properties(Javaアプリケーション用ユーザプロパティファイル)」を参照してください。また,必要に応じて,「2.2.3 usrconf.properties(J2EEサーバ用ユーザプロパティファイル)」も参照してください。
(b) 独自のキー
システムプロパティ独自のキーです。
独自のキーの詳細を次に示します。
- ejbserver.jndi.log.message.verbosemode
-
種別:選択可変
値:onまたはoff
通常値:off
- 内容:
-
標準出力にメッセージログ出力を指定します。
- ejbserver.server.prf.processName
-
種別:選択可変
値:任意のクライアント識別子
通常値:EJBClient
- 内容:
-
性能解析トレースファイルの編集結果で,プロセス名称として表示させたい名前を指定します。nullを指定した場合またはこのキーを指定しない場合,通常値が使用されます。
- java.endorsed.dirs
-
種別:可変
値:ディレクトリパス
通常値:<Application Serverのインストールディレクトリ>\TPB\lib\endorsed(Windowsの場合),または/opt/Cosminexus/TPB/lib/endorsed(UNIXの場合)
- 内容:
-
Endorsed Standards Override Mechanismを使って置き換えるクラスがあるディレクトリパスを指定します。
- java.naming.factory.object
-
種別:固定
値:com.hitachi.software.ejb.jndi.InsNamingFactory
- 内容:
-
JNDIのSPIであるObjectFactoryの実装クラスを指定します。
ObjectFactoryはオブジェクト検索時にオブジェクト変換をします。
なお,旧バージョンで使用されていた値(com.hitachi.software.ejb.jndi.nameserver.spi.cos.wrappers.vbj.WrapperObjectFactory)と互換性があります。
- java.naming.factory.state
-
種別:固定
値:com.hitachi.software.ejb.jndi.InsNamingFactory
- 内容:
-
JNDIのSPIであるStateFactoryの実装クラスを指定します。
StateFactoryはオブジェクト登録時のオブジェクト変換をします。
なお,旧バージョンで使用されていた値(com.hitachi.software.ejb.jndi.nameserver.spi.cos.wrappers.vbj.WrapperStateFactory)と互換性があります。
- javax.rmi.CORBA.UtilClass
-
種別:固定
値:com.hitachi.software.ejb.rmi.Util
- 内容:
-
javax.rmi.CORBA.Utilの実装クラス名を指定します。
なお,旧バージョンで使用されていた値(com.inprise.vbroker.rmi.CORBA.UtilImpl)と互換性があります。
- javax.rmi.CORBA.StubClass
-
種別:固定
値:com.inprise.vbroker.rmi.CORBA.StubImpl
- 内容:
-
javax.rmi.CORBA.Stubの実装クラス名を指定します。
- javax.rmi.CORBA.PortableRemoteObjectClass
-
種別:固定
値:com.hitachi.software.ejb.rmi.PortableRemoteObject
- 内容:
-
javax.rmi.PortableRemoteObjectの実装クラス名を指定します。
なお,旧バージョンで使用されていた値(com.inprise.vbroker.rmi.CORBA.PortableRemoteObjectImpl)と互換性があります。
- org.omg.PortableInterceptor.ORBInitializerClass.com.hitachi.software.ejb.security.std.interceptor.SecurityClientInterceptorInit
-
種別:固定
値:1
- 内容:
-
セキュリティ機能用のクライアント側インターセプタの初期化クラスを指定します。
JavaアプリケーションがEJBのセキュリティインタフェースを利用し,J2EEサーバにログインをしてEJBを呼び出す場合だけ指定します。
- java.security.policy
-
種別:固定
値:<セキュリティポリシーファイルへの絶対パス>
- 内容:
-
<Application Serverのインストールディレクトリ>\CC\client\cli.policy(Windowsの場合),または/opt/Cosminexus/CC/client/cli.policy(UNIXの場合)をクライアント側の任意のディレクトリにコピーし,そのファイル名を絶対パスで指定します。ファイルの内容は変更しないでください。
- org.omg.CORBA.ORBClass
-
種別:固定
値:com.inprise.vbroker.orb.ORB
- 内容:
-
ORBの実装クラス名を指定します。
- org.omg.CORBA.ORBSingletonClass
-
種別:固定
値:com.inprise.vbroker.orb.ORBSingleton
- 内容:
-
ORBのシングルトン用の実装クラス名を指定します。
(4) 記述例
システムプロパティの記述例をOSごとに示します。
(a) Windowsの場合
Javaアプリケーションを開始するbatファイルの記述例を次に示します。これはvbjコマンドを使ってJavaアプリケーションを開始する場合の例です。なお,CLASS_PATHに指定するJARファイルのクラスパスについては,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.7.4 EJBクライアントアプリケーションのクラスパスへのJARファイルの設定」を参照してください。
環境変数については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「付録H システムの環境変数」を参照してください。
setlocal rem --- set environment --- set COSMI_HOME=C:\Program Files\Hitachi\Cosminexus set SERVERNAME=MyServer set PRF_HOME=%COSMI_HOME%\PRF set TPB_HOME=%COSMI_HOME%\TPB set JAVA_HOME=%COSMI_HOME%\jdk set VBJ="%TPB_HOME%\bin\vbj" set VBROKER_ADM=%TPB_HOME%\adm set PATH=%PRF_HOME%\bin;%TPB_HOME%\bin;%JAVA_HOME%\bin;%PATH% rem --- set class path --- set CLASS_PATH=%COSMI_HOME%\TPB\lib\vbjorb.jar set CLASS_PATH=%CLASS_PATH%;%COSMI_HOME%\TPB\lib\vbsec.jar set CLASS_PATH=%CLASS_PATH%;%COSMI_HOME%\PRF\lib\cprf.jar set CLASS_PATH=%CLASS_PATH%;%ProgramFiles%\Hitachi\HNTRLib2\classes\hntrlibMj.jar set CLASS_PATH=%CLASS_PATH%;%COSMI_HOME%\CC\lib\hitj2ee.jar set CLASS_PATH=%CLASS_PATH%;%COSMI_HOME%\CC\client\lib\HiEJBClientStatic.jar set CLASS_PATH=%CLASS_PATH%;stubs.jar set CLASS_PATH="%CLASS_PATH%;1.jar" rem --- set properties --- set PROPS=-Djavax.rmi.CORBA.UtilClass=com.hitachi.software.ejb.rmi.Util set PROPS=%PROPS% -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.hitachi.software.ejb.rmi.PortableRemoteObject set PROPS=%PROPS% -Djava.naming.factory.initial=com.hitachi.software.ejb.jndi.InsContextFactory set PROPS=%PROPS% -Djava.naming.factory.object=com.hitachi.software.ejb.jndi.InsNamingFactory set PROPS=%PROPS% -Djava.naming.factory.state=com.hitachi.software.ejb.jndi.InsNamingFactory set PROPS=%PROPS% -Djava.naming.provider.url=corbaname::localhost:900 set PROPS=%PROPS% -Dejbserver.jndi.cache=on set PROPS=%PROPS% -Dejbserver.jndi.cache.interval=0 set PROPS=%PROPS% -Dejbserver.jndi.cache.interval.clear.option=refresh set PROPS=%PROPS% -Dejbserver.jndi.request.timeout=0 set PROPS=%PROPS% -Dejbserver.rmi.request.timeout=0 set PROPS=%PROPS% -Dejbserver.serverName=%SERVERNAME% set PROPS=%PROPS% -Dvbroker.agent.enableLocator=false set PROPS=%PROPS% -Dorg.omg.PortableInterceptor.ORBInitializerClass.com.hitachi.software.ejb.security.std.interceptor.SecurityClientInterceptorInit=1 set PROPS=%PROPS% "-Djava.security.policy==%COSMI_HOME%\CC\client\cli.policy" set PROPS=%PROPS% -Dejbserver.server.prf.processName=EJBClient set PROPS=%PROPS% "-Dejbserver.client.log.directory=%COSMI_HOME%\CC\client\logs" set PROPS=%PROPS% -Dejbserver.logger.enabled.*=Error rem --- execute client --- %VBJ% -VBJclasspath %CLASS_PATH% %PROPS% ConverterClient endlocal
(b) UNIXの場合
Javaアプリケーションを開始するシェルスクリプトの記述例を次に示します。これはvbjコマンドを使ってJavaアプリケーションを開始する場合の例です。
なお,CLASS_PATHに指定する環境変数については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「付録H システムの環境変数」を参照してください。
#!/bin/csh -f # --- environment --- set COSMI_HOME=/opt/Cosminexus set SERVERNAME="MyServer" set PRF_HOME="${COSMI_HOME}/PRF" set TPB_HOME="${COSMI_HOME}/TPB" set JAVA_HOME="${COSMI_HOME}/jdk" set VBJ="${TPB_HOME}/bin/vbj" setenv PSALLOC early setenv NODISCLAIM true setenv AIXTHREAD_SCOPE S setenv AIXTHREAD_MUTEX_DEBUG OFF setenv AIXTHREAD_RWLOCK_DEBUG OFF setenv AIXTHREAD_COND_DEBUG OFF setenv EXTSHM ON setenv LDR_CNTRL MAXDATA=0x40000000 setenv VBROKER_ADM "${TPB_HOME}/adm" setenv PATH "${JAVA_HOME}/bin:${PATH}" set LPATH="${TPB_HOME}/lib:${PRF_HOME}/lib" if ($?LIBPATH) then setenv LIBPATH "${LPATH}:${LIBPATH}" else setenv LIBPATH "${LPATH}" endif # --- class path --- set CLASS_PATH="${COSMI_HOME}/TPB/lib/vbjorb.jar" set CLASS_PATH="${CLASS_PATH}:${COSMI_HOME}/TPB/lib/vbsec.jar" set CLASS_PATH="${CLASS_PATH}:${COSMI_HOME}/PRF/lib/cprf.jar" set CLASS_PATH="${CLASS_PATH}:/opt/hitachi/HNTRLib2/classes/hntrlibMj.jar" set CLASS_PATH="${CLASS_PATH}:${COSMI_HOME}/CC/lib/hitj2ee.jar" set CLASS_PATH="${CLASS_PATH}:${COSMI_HOME}/CC/client/lib/HiEJBClientStatic.jar" set CLASS_PATH="${CLASS_PATH}:stubs.jar" set CLASS_PATH="${CLASS_PATH}:1.jar" # --- properties --- set PROPS="-Djavax.rmi.CORBA.UtilClass=com.hitachi.software.ejb.rmi.Util" set PROPS="${PROPS} -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.hitachi.software.ejb.rmi.PortableRemoteObject" set PROPS="${PROPS} -Djava.naming.factory.initial=com.hitachi.software.ejb.jndi.InsContextFactory" set PROPS="${PROPS} -Djava.naming.factory.object=com.hitachi.software.ejb.jndi.InsNamingFactory" set PROPS="${PROPS} -Djava.naming.factory.state=com.hitachi.software.ejb.jndi.InsNamingFactory" set PROPS="${PROPS} -Djava.naming.provider.url=corbaname::localhost:900" set PROPS="${PROPS} -Dejbserver.jndi.cache=on" set PROPS="${PROPS} -Dejbserver.jndi.cache.interval=0" set PROPS="${PROPS} -Dejbserver.jndi.cache.interval.clear.option=refresh" set PROPS="${PROPS} -Dejbserver.jndi.request.timeout=0" set PROPS="${PROPS} -Dejbserver.rmi.request.timeout=0" set PROPS="${PROPS} -Dejbserver.serverName=${SERVERNAME}" set PROPS="${PROPS} -Dvbroker.agent.enableLocator=false" set PROPS="${PROPS} -Dorg.omg.PortableInterceptor.ORBInitializerClass.com.hitachi.software.ejb.security.std.interceptor.SecurityClientInterceptorInit=1" set PROPS="${PROPS} -Djava.security.policy==${COSMI_HOME}/CC/client/cli.policy" set PROPS="${PROPS} -Dejbserver.server.prf.processName=EJBClient" set PROPS="${PROPS} -Dejbserver.client.log.directory=${COSMI_HOME}/CC/client/logs" # --- execute client --- ${VBJ} -VBJclasspath ${CLASS_PATH} ${PROPS} ConverterClient
-
下線が引かれている部分は,AIXの固有の記述です。
-
斜体の部分は,OSごとに変数名が異なります。次のとおり置き換えて使用してください。
AIXの場合:LIBPATH
Linuxの場合:LD_LIBRARY_PATH