ワークユニット配下で動作するアプリケーションが使用する環境変数を設定することが可能です。アプリケーションで使用しているデータベース処理などが環境変数を使用する場合などに使用してください。
なお、アプリケーションプロセス上に反映したい環境変数は、必ずワークユニット定義で設定してください。
ワークユニット配下で動作するアプリケーションプロセスの環境変数は、ワークユニット定義に記載された環境変数およびInterstage実行環境で設定されている環境変数の両方が有効となります。
なお、Interstage実行環境で設定されている環境変数は、Windowsでは、システム環境変数が引き継がれ、SolarisおよびLinuxでは、Interstageの起動方法により以下のとおり異なります。
isstartコマンドを使用してInterstageを起動する場合
isstartコマンド実行環境で設定されている環境変数が引き継がれます。なお、システム初期化スクリプト(S99startis)を使用して、サーバ起動時にInterstageを自動起動する運用となっている場合は、システム初期化スクリプト実行環境の環境変数が引き継がれます。
Interstage管理コンソールよりInterstageを起動する場合
Interstage JMXサービスの実行環境で設定されている環境変数が、Interstageに引き継がれます。Interstage JMXサービスはisjmxstartコマンドを使用して起動します。そのため、isjmxstartコマンド実行環境で設定されている環境変数が引き継がれます。なお、システム初期化スクリプト(S95isjmxstart)を使用して、サーバ起動時に自動起動する運用となっている場合は、システム初期化スクリプト実行環境の環境変数が引き継がれます。
クラスタシステムでInterstageを起動する場合
クラスタシステム起動時に設定されている環境変数が、Interstageに引き継がれます。クラスタシステム起動時に設定されている環境変数については、使用するクラスタシステムのマニュアルを参照してください。
ワークユニット定義の環境変数とInterstage実行環境の環境変数が重複している場合には、ワークユニット定義の環境変数が優先されます。
以下に各環境変数で有効となる設定値を説明します。
■コマンドを使用した定義方法
ワークユニット定義の以下の項目に設定します。
ワークユニット定義の“Environment Variable”に記載された環境変数とInterstage実行環境で設定されている環境変数のどちらも有効です。
ただし、環境変数名が重複している場合はワークユニット定義の環境変数の値に置き換えられます。
また、ワークユニット定義内でも、[Application Program]セクションと[Control Option]セクションに同名の環境変数名が設定された場合は、[Application Program]セクションの値が有効となります。
ワークユニット定義の“Path”および“Library for Application”の値が、Interstage実行環境で設定されているLD_LIBRARY_PATHの値の前に設定されます。
そのため、すべて有効となりますが、以下の順に優先されます。
ワークユニット定義の“Path”の設定値
ワークユニット定義の“Library for Application”の設定値
isstartコマンド実行環境での設定値
ただし、ワークユニット定義の“Path”と“Library for Application”とInterstage実行環境で設定されているLD_LIBRARY_PATHのパス長の合計が16384バイトを超えないように設定してください。
ワークユニット定義の“Path for Application”の値が、Interstage実行環境で設定されているPATHの値の前に設定されます。
そのため、どちらも有効となりますが、ワークユニット定義の値が優先されます。
ただし、ワークユニット定義の“Path for Application”とInterstage実行環境で設定されているPATHのパス長の合計が4096バイトを超えないように設定してください。
CORBAワークユニットの場合、ワークユニット定義の“CLASSPATH for Application”の値が、Interstage実行環境で設定されているCLASSPATHの値の前に設定されます。
そのため、どちらも有効となりますが、ワークユニット定義の値が優先されます。
Interstage実行環境で設定されているCLASSPATHはjavaプロセスの引数(-classpath)には設定されません。
以下に定義登録の実行例を示します。なお、ワークユニット定義の詳細は“付録A ワークユニット定義”を参照してください。
ワークユニット定義
[Control Option] |
[Control Option] |
isaddwudefコマンドでワークユニット名を指定して登録します。
isaddwudef -o ISSAMPLE1 |
■Interstage管理コンソールを使用した定義方法
Interstage管理コンソールを使用してCORBAワークユニットの環境変数を設定する場合は、以下のようにして実施します。なお、設定時は“Intestage管理コンソールのヘルプ”も参照してください。
Interstage管理コンソールにログインします。
Interstage管理コンソールの
[Interstage管理コンソール] > [Interstage Application Server] > [システム] > [ワークユニット] の[新規作成]タブ
または、
[Interstage管理コンソール] > [Interstage Application Server] > [システム] > [ワークユニット] > [ワークユニット名] > の[環境設定]タブ
の[ワークユニット設定]で“パス”、“ライブラリパス”および“環境変数”を設定してください。
また、
[Interstage管理コンソール] > [Interstage Application Server] > [システム] > [ワークユニット] > [ワークユニット名] > の[配備]タブ
または、
[Interstage管理コンソール] > [Interstage Application Server] > [システム] > [ワークユニット] > [ワークユニット名] > [インプリメンテーションリポジトリID]の[環境設定]タブ
の[CORBAアプリケーション]で“クラスパス”および“環境変数”を設定してください。
Interstage管理コンソールを使用する場合は、“Intestage管理コンソールのヘルプ”も参照してください。
環境変数の設定には以下の2つの方法があります。
ワークユニット:新規作成画面の環境変数、またはワークユニット:環境設定画面の環境変数
CORBAアプリケーション:配備画面の環境変数、またはCORBAアプリケーション:環境設定画面の環境変数
ワークユニットの環境変数とCORBAアプリケーションの環境変数に同名の環境変数名が設定された場合は、CORBAアプリケーションの環境変数が有効になります。
また、Interstage起動時に設定されていた環境変数とワークユニットの環境変数のどちらも有効です。
ただし、環境変数名が重複している場合は、ワークユニットで定義した環境変数の値が有効になります。
ワークユニット:新規作成画面の詳細設定または、ワークユニット:環境設定画面のライブラリパスで指定します。Interstage起動時に設定されているLD_LIBRARY_PATHの値の前に設定されます。
1行は255Byte以内の空白文字と半角カナ文字を除く文字列を指定できます。
改行で区切って最大30個まで指定可能です。
ワークユニット:新規作成画面の詳細設定または、ワークユニット:環境設定画面のパスで指定します。Interstage起動時に設定されている環境変数PATHの値の前に設定されます。
1行は255Byte以内の空白文字と半角カナ文字を除く文字列を指定できます。
改行で区切って最大30個まで指定可能です。
CORBAアプリケーション:配備画面、またはCORBAアプリケーション:環境設定画面のクラスパスで設定します。Interstage起動時に設定されているCLASSPATHの値の前に設定されます。
1つのパスは、255Byte以内の空白文字と半角カナ文字を除く文字列で指定します。最大255個までのクラスパスを指定できます。複数指定する場合は、改行で区切って指定します。
Interstage管理コンソールによりInterstageの起動を行う場合、UNIXでは、ismngconsolestartコマンドまたはisjmxstartコマンド実行時の環境変数が引き継がれ、Windowsでは、システム環境変数が引き継がれます。
また、ワークユニットのアプリケーション起動時に設定する環境変数PATH、LD_LIBRARY_PATH、CLASSPATHは、ワークユニット定義に設定された値とInterstage起動環境に設定されていた値のパス長の合計が、PATH、LD_LIBRARY_PATHは16384バイト、CLASSPATHは65536バイトを超過した場合は、超過分は有効になりません。