Более одного тасклета в шаге?

У меня есть тасклет, устанавливающий некоторую информацию в мой JobContext, а другой проверяет некоторые вещи, чтобы узнать, могу ли я выполнить следующие шаги в моем пакете или нет. Оба тасклета работают хорошо, если я использую два разных шага в своем рабочем процессе, но я бы хотел использовать эти два тасклета на одном шаге.

Я попытался дважды добавить ".tasklet(taskletName)" в мою пакетную конфигурацию, например так:

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

Это не работает: выполняется только один из тасклетов (кажется, второй). Я ничего не видел весной док; Есть ли способ сделать это? Или Spring не позволяет иметь более одного тасклета за один шаг?

1 ответ

Решение

Только один тасклет для шага (я думаю, что это по замыслу).
Если вам нужно проверить предварительные условия для выполнения вашей работы, используйте JobExecutionDecider,

Другие вопросы по тегам