从Spring Cloud Data Flow启动Spring Batch任务

时间:2018-02-07 19:57:11

标签: spring-batch spring-cloud spring-cloud-dataflow spring-cloud-task

我正在使用基于Web的弹簧批量应用程序。我的批处理作业将在API调用上启动。这是我作为Web服务公开的方法。

    @RequestMapping(value = "/v1/initiateEntityCreation", method = RequestMethod.GET)
    public String initiateEntityCreation()
            throws JobExecutionAlreadyRunningException, JobRestartException, JobInstanceAlreadyCompleteException,
            JobParametersInvalidException, NoSuchJobException, JobInstanceAlreadyExistsException {
        JobParametersBuilder jobParametersBuilder = new JobParametersBuilder();
        jobParametersBuilder.addDate("Date", new Date());
Long executionContext = jobOperator.start("InitiateEntityCreation", String.format("Date=%s", new Date()));
        return executionContext.toString();
    }

我的批处理工作正常,我有一个Mysql实例作为我的工作存储库。我已将Spring Cloud数据流集成到我的批处理应用程序中。我有@EnableTask注释和所有必要的依赖项。我已将Spring Cloud数据本地服务器连接到我的spring批处理jon Repository实例。

这是我对SCDF的命令行参数。

java -jar spring-cloud-dataflow-server-local-1.2.3.RELEASE.jar --
spring.datasource.url=jdbc:mysql://localhost:3306/springbatchdb--
spring.datasource.username=root --spring.datasource.password=password --
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver  

我的本​​地服务器正在运行并捕获所有作业执行实例。我已将我的弹簧批量应用程序注册到SCDF,并为定义了SCDF的任务。

当我尝试从SCDF启动这项工作时,我的任务成功执行了#34;但是我的工作没有被执行。

如果我检查任务执行情况,我会看到

StartTime N / A,EndTime N / A,如果我深入到任务执行,则没有已运行的批处理作业。请告诉我们如何使用Spring Cloud数据流启动基于Web的Spring批处理作业。

0 个答案:

没有答案
相关问题