Cosminexus V9 アプリケーションサーバ リファレンス コマンド編

[目次][索引][前へ][次へ]

cjexecjobバッチアプリケーションの実行

形式

スケジューリング機能を使用しない場合
cjexecjob <サーバ名称> [[<Javaオプション>]...]
          <Javaアプリケーションクラス名>
          [[<mainメソッドに渡す引数>]...]

スケジューリング機能を使用する場合
cjexecjob [<スケジュールグループ名>] [-jobID <ジョブID>]
          [[<Javaオプション>]...]
          <Javaアプリケーションクラス名>
          [[<mainメソッドに渡す引数>]...]

機能

スケジューリング機能を使用しない場合は,指定したサーバ名称のバッチサーバでバッチアプリケーションを実行します。

スケジューリング機能を使用する場合は,CTMによって振り分けられたバッチサーバでバッチアプリケーションを実行します。なお,ジョブが実行できるバッチサーバがないときは,バッチアプリケーションをスケジュールキューに待機させます。

<Javaオプション>以降の引数には最大1,024バイトまで指定できます。

cjexecjobコマンドを実行した場合,およびcjexecjobコマンドの処理が終了した場合は,メッセージが出力されます。cjexecjobコマンドが出力するメッセージは,usrconf.cfg(バッチアプリケーション用オプション定義ファイル)のbatch.log.stdout.enabledキーによって抑止できます。

cjexecjobコマンドのオプションは,usrconf.cfg(バッチアプリケーション用オプション定義ファイル)で指定します。また,システムプロパティは,usrconf.properties(バッチアプリケーション用ユーザプロパティファイル)で指定します。usrconf.cfg(バッチアプリケーション用オプション定義ファイル)およびusrconf.properties(バッチアプリケーション用ユーザプロパティファイル)が格納されているディレクトリは,次の順で検索されます。

  1. 環境変数(CJBATCHUSRCONFDIR)に指定したディレクトリ
  2. cjexecjobコマンドを実行したディレクトリ

注※ 環境変数(CJBATCHUSRCONFDIR)にはディレクトリを絶対パスで指定してください。

同じキーのシステムプロパティを複数指定した場合,最後に指定したシステムプロパティが優先されます。

同じキーのシステムプロパティを異なる手段で指定した場合の優先順位は次のとおりです。

  1. cjexecjobコマンドの引数
  2. usrconf.properties(バッチアプリケーション用ユーザプロパティファイル)
  3. usrconf.cfg(バッチアプリケーション用オプション定義ファイル)
  4. usrconf.properties(バッチサーバ用ユーザプロパティファイル)
  5. usrconf.cfg(バッチサーバ用オプション定義ファイル)

引数

<サーバ名称>
バッチアプリケーションを実行するバッチサーバの名称を指定します。

<スケジュールグループ名>
CTMがバッチアプリケーションの実行をスケジューリングするときに割り当てるバッチサーバのグループ名を指定します。
スケジュールグループ名は,usrconf.cfg(バッチアプリケーション用オプション定義ファイル)でも指定できます。スケジュールグループ名の指定の優先順位は次のとおりです。
  • cjexecjobコマンドの引数
  • usrconf.cfg(バッチアプリケーション用オプション定義ファイル)
なお,スケジュールグループ名の指定は省略できます。スケジュールグループ名の指定を省略した場合のデフォルト値は"JOBGROUP"です。

-jobID <ジョブID>
実行するバッチアプリケーションのジョブIDをユニークな1〜32文字の英数字で指定します。
-jobID <ジョブID>を省略した場合,ジョブIDは自動生成されます。ジョブIDの自動生成については,マニュアル「アプリケーションサーバ 機能解説 拡張編」の「4. バッチアプリケーションのスケジューリング」を参照してください。
UNIXの場合,<ジョブID>の指定を省略しバッチアプリケーションを起動したときは,アプリケーションを停止する際に,ジョブIDをダブルクォーテーション("")で囲んで次のように指定する必要があります。
-jobID "<ジョブID>"

<Javaオプション>
JavaVMの起動オプションを指定します。
指定できるオプションを次に示します。
  • -cp
  • -classpath
  • -D<name>=<value>

<Javaアプリケーションクラス名>
パッケージ名を含めたJavaアプリケーションのクラス名を指定します。

<mainメソッドに渡す引数>
Javaアプリケーションのmainメソッドに渡す引数を指定します。
スケジューリング機能を使用する場合に,<スケジュールグループ名>を省略するときは,次のどちらかの引数を必ず一緒に指定してください。
  • <ジョブID>
  • <Java オプション>
次に例を示します。
(誤った例)
cjexecjob com.hitachi.mypackage.MyBatchApp argA argB
 
(正しい例)
cjexecjob -jobID JOBID com.hitachi.mypackage.MyBatchApp argA argB
cjexecjob -D<name>=<value> com.hitachi.mypackage.MyBatchApp argA argB

入力例

スケジューリング機能を使用しない場合
cjexecjob MyBatchServer com.hitachi.mypackage.MyBatchApp

スケジューリング機能を使用する場合
cjexecjob JOBGROUP com.hitachi.mypackage.MyBatchApp

戻り値

<public static int main(String[])メソッドからreturnした値>:
public static int main(String[])メソッドを使用した場合に返却されます。

<System.exit(),Runtime.halt(),Runtime.exit()の引数に指定した値>:
System.exit(),Runtime.halt(),Runtime.exit()を使用した場合に返却されます。

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

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

注意事項