Hitachi

JP1 Version 11 JP1/Advanced Shell 


8.3.10 adshjavaコマンド(Javaのバッチアプリケーションを実行する)【Windows,Linux,AIX,HP-UX限定】

形式

uCosminexus Application Serverのスケジューリング機能を使用する場合
adshjava [-grp スケジュールグループ名]
           -java [[Javaオプション]...] Javaアプリケーションクラス名 
           [[mainメソッドに渡す引数]...
uCosminexus Application Serverのスケジューリング機能を使用しない場合
adshjava -srv バッチサーバ名
         -java [[Javaオプション]...] Javaアプリケーションクラス名 
           [[mainメソッドに渡す引数]...]

機能

adshjavaコマンドの指定に従って,uCosminexus Application Serverと連携してJavaのバッチアプリケーションを実行します。このコマンドの指定内容は,uCosminexus Application Serverのcjexecjobコマンドの引数に指定されてcjexecjobコマンドが実行されます。ジョブの強制終了を検知したときには,adshjavaコマンドがcjkilljobコマンドを実行してJavaのバッチアプリケーションを自動的に停止します。

JP1/Advanced Shellのジョブが強制終了すると,Javaのバッチアプリケーションも強制終了されます。

強制終了時にJavaのバッチアプリケーションを自動的に強制停止できる条件を次に示します。

表8‒5 強制終了時にJavaのバッチアプリケーションを自動的に強制停止できる条件

強制停止できる条件(2回目以降を除く)

Windows

Linux,AIX,HP-UX

JP1/AJSからの強制終了

Ctrl+C

Ctrl+break

×

コンソールを閉じる

×

adshexecコマンドプロセスへの終了シグナル※1送信

adshjavaコマンドプロセスへのSIGTERM送信

adshjavaコマンドプロセスへのSIGINT送信

adshexecのデバッガのquitコマンドで中断

※2

※2

(凡例)

○:強制停止できます。

×:強制停止できません。

-:該当しない

注※1

終了シグナルとは,adshexecコマンドが終了対象とするシグナルのことです。終了対象とするシグナルについては,「3.11.2 シグナル受信時の動作【UNIX限定】」を参照してください。

注※2

quitコマンドによって,バックグラウンド実行するコマンドの強制停止はできません。

Javaのバッチアプリケーションの実行方法として,uCosminexus Application Serverのスケジューリング機能の使用有無を選択できます。

このコマンドを実行できるユーザーは次のとおりです。詳細については,マニュアル「Cosminexus V9 アプリケーションサーバ リファレンス コマンド編」のcjexecjobコマンドまたはcjkilljobコマンドの記述を参照してください。権限がない場合,cjexecjobコマンドまたはcjkilljobコマンドがエラー終了します。

引数

-grp スケジュールグループ名

uCosminexus Application ServerのComponent Transaction Monitorが,Javaのバッチアプリケーションの実行をスケジューリングするときに割り当てるバッチサーバのグループ名を指定します。バッチサーバのグループ名は63バイト以内で指定します。

このオプションは,-javaオプションよりも前に指定してください。 スケジュールグループ名の長さはチェックされますが,それ以外のチェックはされないで,cjexecjobコマンド,cjkilljobコマンドの引数に指定されます。

-srv バッチサーバ名

Javaのバッチアプリケーションを実行する,uCosminexus Application Serverのバッチサーバ名を255バイト以内で指定します。

このオプションは,-javaオプションよりも前に指定してください。

バッチサーバ名の長さはチェックされますが,それ以外のチェックはされないで,cjexecjobコマンド,cjkilljobコマンドの引数に指定されます。

-java

このオプション以降の指定内容が,そのままuCosminexus Application Serverのcjexecjobコマンドに渡されます。

このオプション以降に指定した内容は,1つも指定がない場合を除いてadshjavaコマンドではエラーチェックされません。cjexecjobコマンドでのチェック処理に任せます。

Javaオプション

JavaVMの起動オプションを指定します。指定方法については,マニュアル「Cosminexus V9 アプリケーションサーバ リファレンス コマンド編」を参照してください。

#-adsh_fileコマンド,#-adsh_file_tempコマンド,または#-adsh_spoolfileコマンドで割り当てたファイルは,このオプションで「-Dシステムプロパティ名=${ファイル定義名}」を記述することで,システムプロパティ経由でファイル名をJavaのバッチアプリケーションに渡せます。

Javaアプリケーションクラス名

パッケージ名を含めたJavaアプリケーションのクラス名を指定します。Javaアプリケーションクラス名については,マニュアル「Cosminexus V9 アプリケーションサーバ リファレンス コマンド編」のcjexecjobコマンドの記述個所を参照してください。

mainメソッドに渡す引数

Javaアプリケーションのmainメソッドに渡す引数を指定します。mainメソッドに渡す引数については,マニュアル「Cosminexus V9 アプリケーションサーバ リファレンス コマンド編」のcjexecjobコマンドの記述個所を参照してください。

終了コード

終了コード

発生条件

意味

0※1

public static int main(String[])メソッドから返された値が0

public static int main(String[])メソッドを使用した場合に返されます。

System.exit(),Runtime.halt(),Runtime.exit()の引数に指定した値が0

System.exit(),Runtime.halt(),Runtime.exit()を使用した場合に返されます。

cjexecjobコマンドの戻り値が0

public static void main(String[])メソッドを使用して正常終了しました。

1※2

adshjavaコマンドの処理の要因で終了

adshjavaコマンドが強制終了しました。

2※2

adshjavaコマンドの処理の要因で終了

adshjavaコマンドの処理でエラーが発生しました。

強制終了処理でcjkilljobコマンドの起動に失敗すると1になることがあります。

public static int main(String[])メソッドからreturnした値+15※1※3

public static int main(String[])メソッドから返された値が1以上

public static int main(String[])メソッドを使用した場合に返されます。

System.exit(),Runtime.halt(),Runtime.exit()の引数に指定した値+15※1※3

System.exit(),Runtime.halt(),Runtime.exit()の引数に指定した値が1以上

System.exit(),Runtime.halt(),Runtime.exit()を使用した場合に返されます。

cjexecjobコマンドの戻り値+15※1※3

cjexecjobコマンドの戻り値が1

Javaのバッチアプリケーションの実行に失敗しました。または,Javaのバッチアプリケーションを強制終了しました。

public static int main(String[])メソッドからreturnした値※1※4

public static int main(String[])メソッドから返された値が負数(Windows限定。UNIXは下8ビットがRCとして採用される)

public static int main(String[])メソッドを使用した場合に返されます。

System.exit(),Runtime.halt(),またはRuntime.exit()の引数に指定した値※1※4

System.exit(),Runtime.halt(),またはRuntime.exit()の引数に指定した値が負数(Windows限定。UNIXは下8ビットがRCとして採用される)

System.exit(),Runtime.halt(),またはRuntime.exit()を使用した場合に返されます。

17

cjexecjobコマンドの起動に失敗

cjexecjobコマンドの起動が失敗した場合に返されます。

注※1

uCosminexus Application Serverのcjexecjobコマンドの戻り値です。

注※2

adshjavaコマンドの終了コードです。

注※3

終了コードが255を超える場合は,255に変換されます。

注※4

戻り値が負の値の場合は,ジョブコントローラによって255に変換されます。

注意事項

使用例