一步中有多个tasklet?

时间:2015-06-10 08:42:20

标签: spring spring-batch tasklet

我有一个tasklet将一些信息设置到我的JobContext中,另一个检查一些东西,知道我是否可以执行我的批处理中的后续步骤。 如果我在我的工作流程中使用两个不同的步骤,两个tasklet都运行良好,但我想在同一步骤中使用这两个tasklet。

我尝试在我的批处理配置中添加两次“.tasklet(taskletName)”,如下所示:

return stepBuilderFactory.get("stepSettings").tasklet(taskletSettings).tasklet(taskletChecking).listener(executionContextListener).listener(stepExecutionListener).build();

它不起作用:只执行其中一个tasklet(它似乎是第二个)。我在春天的文档中没有看到任何内容;有没有办法做到这一点 ?或者Spring不允许在同一步骤中拥有多个tasklet?

1 个答案:

答案 0 :(得分:4)

步骤只有一个tasklet(我认为这是设计) 如果您需要前置条件检查以使您的工作流动,请使用JobExecutionDecider