318.5. 例

Spring Batch ジョブの実行をトリガーする:

from("direct:startBatch").to("spring-batch:myJob");

JobLauncher を明示的に設定して Spring Batch ジョブの実行をトリガーする。

from("direct:startBatch").to("spring-batch:myJob?jobLauncherRef=myJobLauncher");

Camel 2.11.1 以降、JobLauncher によって返される JobExecution インスタンスは、SpringBatchProducer によって出力メッセージとして転送されます。JobExecution インスタンスを使用して、Spring Batch API を直接使用していくつかの操作を実行できます。

from("direct:startBatch").to("spring-batch:myJob").to("mock:JobExecutions");
...
MockEndpoint mockEndpoint = ...;
JobExecution jobExecution = mockEndpoint.getExchanges().get(0).getIn().getBody(JobExecution.class);
BatchStatus currentJobStatus = jobExecution.getStatus();