4

我有一个 tasklet 将一些信息设置到我的 JobContext 中,另一个检查一些内容以了解我是否可以执行批处理中的后续步骤。如果我在工作流程中使用两个不同的步骤,这两个小任务都可以正常工作,但我想在同一个步骤中使用这两个小任务。

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

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

它不起作用:只执行了一个小任务(它似乎是第二个)。我在 spring doc 中什么也没看到;有没有办法做到这一点 ?还是 Spring 不允许在同一步骤中有多个 tasklet?

4

1 回答 1

7

步骤只有一个小任务(我认为这是设计使然)。
如果您需要先决条件检查以完成您的工作,请使用JobExecutionDecider.

于 2015-06-10T09:31:15.957 回答