JobSchedulerのREST-APIをShellから使ってみるサンプルです。
REST-API、jqを導入してShellで実装すると更に楽々なんです。
要件的にJava実装縛りなどがなければ、実は基盤ツールとしてはこちらの方がおすすめかもです(汗)
【jqの導入】
sudo curl -o /usr/bin/jq -L https://github.com/stedolan/jq/releases/download/jq-1.5/jq-linux64 && sudo chmod +x /usr/bin/jq
【Shell実装のサンプル】
#!/bin/bash
#RESPONSE取得(JSON形式で返却されます)
JSON_RESPONSE=$(curl -X POST -H "Authorization: Basic cm9vdDpyb290" -H "Content-Type: application/json" -H "Cache-Control: no-cache" http://localhost:4446/joc/api/security/login | jq ".accessToken")
#返却値のJSONからACCESS_TOKENを取得
ACCESS_TOKEN=$(echo $JSON_RESPONSE | jq "." | sed "s/\"//g")
echo $ACCESS_TOKEN
#ヘッダフィールドに$ACCESS_TOKEN変数の値をセットしてコマンドを実行
RET=$(curl -X POST -H "access_token: $ACCESS_TOKEN" -H "Content-Type: application/xml" -H "Cache-Control: no-cache" http://localhost:4446/joc/api/jobscheduler/commands -d '<jobscheduler_commands jobschedulerId="scheduler"><start_job job="sample/job1" at="now" /></jobscheduler_commands>' | jq ".")
#実行結果でエラーが発生している場合には以下のように結果のレスポンスの「error」にて取得可能
ERROR_MESSAGE=$(echo $RET | jq ".error")
echo $ERROR_MESSAGE
#適宜エラーハンドルを記述!
#;;
ああ楽ちん、です