12.2.1 usrconf.cfg(Javaアプリケーション用オプション定義ファイル)
- 〈この項の構成〉
(1) 形式
次のようにキーを指定します。
<キー名称> = <値>
- 指定方法
-
-
改行までが値になります。
-
#で始まる行はコメントとみなされます。
-
値が存在しない行を定義した場合,その行は無視されます。
-
値の後ろには,空白やコメントなどの文字列は追加できません。追加した場合,不正な値と解釈されます。
(例) <キー名称> = <値> #<コメント>
-
値にスペースを含むパスを指定する場合,パスをダブルクォーテーション(”)で囲む必要はありません。
-
実行時の文字エンコーディングと異なる文字エンコーディングでは記述できません。
-
(2) ファイルの格納先
-
Windowsの場合
<ユーザ定義ファイル格納ディレクトリ>※\usrconf.cfg
-
UNIXの場合
<ユーザ定義ファイル格納ディレクトリ>※/usrconf.cfg
- 注※
-
ユーザ定義ファイル格納先環境変数(CJCLUSRCONFDIR)で指定したディレクトリです。ユーザ定義ファイル格納先環境変数が設定されていない場合,カレントディレクトリが参照されます。EJBクライアントアプリケーションの実行に必要な環境変数の設定については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)」の「3.3.4 EJBクライアントアプリケーションの実行に必要な環境変数の設定」を参照してください。
(3) 機能
cjclstartapコマンドを使用する場合に,Javaアプリケーションを実行するJavaVMの起動オプションを指定します。
Javaアプリケーションを実行中に,このファイルの内容を変更した場合,変更した内容は,次回Javaアプリケーションを起動したときに反映されます。
(4) 指定できるキー
指定できるキーとデフォルト値を次に示します。このキーに不正な値を指定した場合は,動作は保証されません。
- ポイント
-
ここでは,次の内容について説明します。
-
Javaアプリケーション用usrconf.cfgファイルで指定できるキーの概要
指定できるキーのうち,J2EEサーバ用usrconf.cfgファイルと共通のキーについては,ここでは詳細を説明しません。
共通のキーの詳細については,「2.2.2 usrconf.cfg(J2EEサーバ用オプション定義ファイル)」を参照してください。参照する場合には,「J2EEサーバ」を「Javaアプリケーション」と読み替えてください。
なお,J2EEサーバ用のキーと指定内容が異なる場合には,ここでキーの詳細について説明します。
-
J2EEサーバ用のキーとの差異(J2EEサーバ用usrconf.cfgファイルのキーと指定内容が異なる場合)
Javaアプリケーション用のキーとJ2EEサーバ用のキーの指定内容が異なる場合には,キーの詳細について説明します。差異の有無は「差異」列に表記します。
-
キー名称 |
差異 |
内容 |
デフォルト値 |
---|---|---|---|
なし |
指定されたオプションを使ってJavaVMを起動します。 add.jvm.argで指定できるJavaVMのオプションについては,「14.1 JavaVM拡張オプションの一覧」および「14.5 Application Serverで指定できるJava HotSpot VMのオプション」を参照してください。 |
デフォルト値については「12.2.1(6) Javaアプリケーション用オプション定義ファイルに指定するJavaVMオプションのデフォルト値」を参照してください。 |
|
あり |
Javaアプリケーションの実行に必要なクラスパスを指定します。 EJBアプリケーションごとの実行に必要なクラスパス(stubs.jar,<数字>.jar,<ユーザクラス>.jar)を指定します。 なお,スペースを含むパスを指定する場合,パスをダブルクォーテーション(")で囲む必要はありません。また,ダブルクォーテーションでの指定は有効となりません。 |
− |
|
なし |
JNI用の共有ライブラリを指定します。 |
− |
|
なし |
プロセス内で使用するlibstdc++ライブラリのバージョンを指定します。なお,このキーは,Linux用です。 指定できる文字列を次に示します。
09-00以降では,設定できるのは「6」だけです。 |
6 |
|
独自 |
同じカレントディレクトリまたは,同じログ出力先ディレクトリを使用する複数のcjclstartapコマンドを同時に起動するかどうかを指定します。
|
true |
|
独自 |
ejb.client.log.directoryキーに指定したディレクトリの下の,Javaアプリケーションが出力するメッセージのログ出力先のディレクトリ名を,1〜16バイトで指定します。 指定できる文字は,半角英数字,アンダースコア(_),およびハイフン(-)です。 16バイトを超える文字列を指定した場合,KDJE40051-Wのメッセージが出力されます。 ディレクトリにアクセス権がない場合や,ファイル名を指定した場合は,KDJE40052-Eのメッセージが出力され,Javaアプリケーションが終了します。 ユーザプロパティファイル(usrconf.properties)にejbserver.client.ejb.logを指定した場合,次のログファイルの出力先はユーザプロパティファイルの指定が優先されます。
|
system |
|
独自 |
Javaアプリケーションが出力するメッセージのログ出力先のサブディレクトリ名を1〜16バイトで指定します。 指定できる文字は,半角英数字,アンダースコア(_),およびハイフン(-)です。 16バイトを超える文字列を指定した場合,KDJE40051-Wのメッセージが出力されます。 ディレクトリにアクセス権がない場合や,ファイル名を指定した場合は,KDJE40052-Eのメッセージが出力され,Javaアプリケーションが終了します。 ユーザプロパティファイル(usrconf.properties)にejbserver.client.log.appidを指定した場合,次のログファイルの出力先はユーザプロパティファイルの指定が優先されます。
|
ejbcl |
|
独自 |
Javaアプリケーションのログ出力先のパスを1〜180バイトの範囲で指定します。 パスは絶対パスまたはカレントディレクトリからの相対パスで指定します。 指定できる文字は,半角英数字,アンダースコア(_),ハイフン(-)およびパス区切り文字です。 180バイトを超えるパス(相対パスを指定したときは,カレントディレクトリまでの絶対パスと相対パスの合計)を指定した場合,KDJE40059-Wのメッセージが出力され,デフォルト値が使用されます。デフォルト値が180バイトを超える場合は,ログの初期化に失敗し,異常終了します。 Windowsの場合,UNC名を含むパスは指定できません。UNIXの場合,nfsマウントされたディスク上へのパスは指定できません。 ディレクトリにアクセス権がない場合や,ファイル名を指定した場合は,KDJE40052-Eのメッセージが出力され,Javaアプリケーションが終了します。 ユーザプロパティファイル(usrconf.properties)にejbserver.client.log.directoryを指定した場合,次のログファイルの出力先はユーザプロパティファイルの指定が優先されます。
|
カレントディレクトリ/logs |
|
独自 |
次に示す対象ログファイルの排他処理のパラメタを指定します。
排他処理には,UNIXとWindowsで違いがあります。
|
30 |
|
独自 |
次に示す対象ログファイルの排他処理のパラメタを指定します。
排他処理には,UNIXとWindowsで違いがあります。
また,複数のcjclstartapコマンドをサブディレクトリ共有モードで同時に起動した際,cjclstartapコマンドが,KDJE40016-E(errnoが22),KDJE30043-E,KDJE40052-Eメッセージを標準エラー出力に出力した場合(ログファイルの排他処理に失敗した場合)などに使用します。 |
100 |
|
独自 |
標準出力へメッセージを出力するかどうかを指定します。
標準出力へのメッセージ出力を制御できるログは次のとおりです。
|
true |
|
独自 |
使用するJavaVMのタイプを設定します。指定できる値は次のどちらかです。
指定値に誤りがあった場合は,”client”,”server”の順でJavaVMを検索します。なお,このときKDJE40020-Wメッセージが出力されます。 |
client |
(5) 記述例
# EJB client application classpath # RMI-IIOP Stubs jar file add.class.path=<Javaアプリケーション格納パス>\stubs.jar # RMI-IIOP interface jar file add.class.path=<Javaアプリケーション格納パス>\1.jar # User class add.class.path=<Javaアプリケーション格納パス>\<Javaアプリケーションjar> #add.class.path=<User classpath> # java vm options add.jvm.arg=-Xms256m add.jvm.arg=-Xmx512m
(6) Javaアプリケーション用オプション定義ファイルに指定するJavaVMオプションのデフォルト値
Javaアプリケーション用オプション定義ファイルに指定するJavaVMオプションのデフォルト値を示します。
-
-XX:HitachiJavaLog:<ejb.client.log.directory>\<ejb.client.ejb.log>\<ejb.client.log.appid>
-
-XX:+HitachiOutOfMemoryStackTrace
-
-XX:-HitachiThreadDumpToStdout
-
-XX:+HitachiOutOfMemoryAbort
-
-XX:+HitachiJavaClassLibTrace
-
-XX:+HitachiLocalsInStackTrace
-
-XX:HitachiJavaClassLibTraceLineSize=1024
-
-XX:+HitachiLocalsSimpleFormat
-
-XX:+HitachiTrueTypeInLocals
-
-XX:+HitachiLocalsInStackTrace
-
-XX:+HitachiVerboseGC
-
-XX:+HitachiVerboseGCPrintCause
-
-XX:+HitachiOutputMilliTime
(7) 注意事項
-
OSのロケールと異なる文字エンコーディングで記述しないでください。また,OSのロケールにUTF-8を使用する場合,BOM付きUTF-8では記述しないでください。
-
usrconf.propertiesとusrconf.cfgのadd.jvm.argの-Dに同じキーが指定されている場合は,usrconf.propertiesの値が優先されます。
-
add.class.pathキーに指定されている値の中に,<cosminexus.home>タグを使用してコンテナ拡張ライブラリ用のJARを指定しているものがあります。これはApplication Serverのインストール先を意味しているため,add.class.pathキーの記述内容を変更する必要はありません。なお,add.class.pathキーにコンテナ拡張ライブラリを追加する場合は,インストールおよびアンインストール時の動作を保証できなくなるおそれがあるので,<cosminexus.home>タグを使用しないでください。
-
次に示すプロパティは"-D"で指定できません。
java.endorsed.dirs
java.security.policy
java.class.path
java.library.path
-
Java EEの機能を使用するJavaアプリケーションの場合,add.jvm.argキーで--add-modulesおよび--module-pathオプションを指定しないでください。指定した場合は,動作を保証しません。
-
Java EEの機能を使用しないJavaアプリケーションの場合,add.jvm.argキーで--add-modules,および--module-path オプションを指定して,モジュール化したライブラリを使用できます。
-
JDK17以降のデフォルトのGCは,通常はG1GCが選択されます。デフォルトのGCの選択方式についてはマニュアル「アプリケーションサーバ 機能解説 保守/移行編」の「9.19.1 デフォルトで選択されるメモリ管理方式」を参照してください。JDK11以前のSerialGCを使用したい場合は,-XX:+UseSerialGCを設定してください。