ここでは,コンテナ拡張ライブラリを使用するための設定について説明します。なお,コンテナ拡張ライブラリがJNIを利用する場合は,サーバ起動・停止フック機能を使用します。
コンテナ拡張ライブラリを使用するためには,次の設定が必要です。
- コンテナ拡張ライブラリ用のJARファイルを作成します。
コンテナ拡張ライブラリの利用については,「13.2 コンテナ拡張ライブラリの利用」を参照してください。
- 簡易構築定義ファイルで,論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを指定します。
- add.class.path
add.class.pathの設定値には,手順1.で作成したJARファイルのパスをJ2EEサーバのシステムクラスパスを指定します。
add.class.pathは,簡易構築定義ファイルのJ2EEサーバの拡張パラメタに設定します。
- コンテナ拡張ライブラリからJNI機能を使用する場合は,簡易構築定義ファイルで,論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを指定します。
- add.library.path
add.library.pathの設定値には,JNI用ライブラリの検索パスを指定します。
- ejbserver.application.InitTermProcessClasses
ejbserver.application.InitTermProcessClassesの設定値には,サーバ起動・停止フック機能のクラス名を指定します。
add.library.pathおよびejbserver.application.InitTermProcessClassesは,簡易構築定義ファイルの,J2EEサーバの拡張パラメタに設定します。
- サーバ管理コマンド用のファイルのキーにコンテナ拡張ライブラリ用のJARファイルを指定します。
指定するファイルおよびキーは,OSによって異なります。
- Windowsの場合
usrconf.batのUSRCONF_JVM_CLASSPATHキー
- UNIXの場合
usrconfのUSRCONF_JVM_CLPATHキー
- コンテナ拡張ライブラリからJNI機能を使用する場合は,サーバ管理コマンド用のファイルのキーで,JNI用ライブラリの検索パスを指定します。
複数指定する場合は,セミコロン(;)で区切ってください。
指定するファイルは,OSによって異なります(キーは共通です)。
- Windowsの場合
usrconf.batのUSRCONF_JVM_LIBPATHキー
- UNIXの場合
usrconfのUSRCONF_JVM_LIBPATHキー
ファイルの詳細については,マニュアル「Cosminexus アプリケーションサーバ システム構築・運用ガイド」の「8.4 システムの構成定義」およびマニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「5.3 usrconf.bat(サーバ管理コマンド用オプション定義ファイル)」を参照してください。
簡易構築定義ファイルおよびユーザ定義ファイルの設定例を次に示します。この例では,コンテナ拡張ライブラリのJARファイルは「extended_container.jar」で,そのコンテナ拡張ライブラリがJNIを使用して「extended_container.dll」(UNIXの場合,extended_container)を呼び出します。
- Windowsの場合
- 簡易構築定義ファイルの設定例
<configuration>
<logical-server-type>j2ee-server</logical-server-type>
<param>
<param-name>add.class.path</param-name>
<param-value>c:¥jar¥extended_container.jar</param-value>
<param-name>add.library.path</param-name>
<param-value>c:¥lib</param-value>
</param>
:
</configuration> |
- サーバ管理コマンド用のusrconf.batの設定例
rem system classpath
set USRCONF_JVM_CLASSPATH=c:¥jar¥extended_container.jar
rem library path
set USRCONF_JVM_LIBPATH=c:¥lib |
- UNIXの場合
- 簡易構築定義ファイルの設定例
<configuration>
<logical-server-type>j2ee-server</logical-server-type>
<param>
<param-name>add.class.path</param-name>
<param-value>/work/classes/extended_container.jar</param-value>
<param-name>add.library.path</param-name>
<param-value>/work/lib</param-value>
</param>
:
</configuration> |
- サーバ管理コマンド用のusrconfの設定例
#!/bin/csh -f
# system classpath
set USRCONF_JVM_CLPATH=/work/classes/extended_container.jar
# library path
set USRCONF_JVM_LIBPATH=/work/lib |