#spring-batch
#spring-batch
Вопрос:
Этот раздел считывает файл с нашего сервера, обрабатывает его, записывает и архивирует.
@Bean
public Step step1() {
log.info("Made if to step1");
System.out.println("Made it to Step 1");
return this.stepBuilderFactory.get("step1")
.<PaymentTransaction, PaymentTransaction>chunk(10)
.reader(paymentTransactionItemReader())
.writer(paymentTransactionItemWriter())
.build();
}
@Bean
public JobExecutionDecider decider() {
System.out.println("Made it to the decider");
return (jobExecution, stepExecution) -> new FlowExecutionStatus("Success"); }
@Bean
public FlowJobBuilder job() {
return jobBuilderFactory.get("BenefitIssuance")
.start(step1())
.next(decider())
.on("Success")
.end()
.build();
}
Однако, когда он достигает шага build () в конце, он возвращается к считывателю
Комментарии:
1. Предполагается ли, что
job()
метод возвращает aFlowJobBuilder
, а не aJob
? Где определение задания, которое вы пытаетесь выполнить?
Ответ №1:
Как упоминалось в комментариях, я не понимаю, почему job()
метод возвращает a FlowJobBuilder
, а не a Job
. Следующее определение задания не повторяется на том же шаге:
@Bean
public Job job() {
return jobs.get("job")
.start(step1())
.next(decider())
.on("Success")
.end()
.build()
.build();
}