You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Spring Batch Component

The spring-batch: component and support classes provide integration bridge between Camel and Spring Batch infrastructure.

Maven users will need to add the following dependency to their pom.xml for this component:

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-spring-batch</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

URI format

spring-batch:jobName[?options]

Where jobName represents the name of the Spring Batch job located in the Camel registry.

This component can only be used to define producer endpoints, which means that you cannot use the Spring Batch component in a from() statement.

Job execution

When Spring Batch component receives the message, it triggers the job execution. The job will be executed using the org.springframework.batch.core.launch.JobLaucher instance resolved according to the following algorithm:

  • if JobLauncher is manually set on the component, then use it.
  • if jobLauncherRef option is set on the component, then search Camel Registry for the JobLauncher with the given name.
  • if there is JobLauncher registered in the Camel Registry under jobLauncher name, then use it.
  • if none of the steps above allow to resolve the JobLauncher and there is exactly one JobLauncher instance in the Camel Registry, then use it.

All headers found in the message are passed to the JobLauncher as job parameters. String, Long, Double and java.util.Date values are copied to the org.springframework.batch.core.JobParametersBuilder - other data types are converted to Strings.

Options

Name

Default Value

Description

jobLauncherRef

null

Camel 2.10: Explicitly specifies the name of the JobLauncher to be used.

  • No labels