spring batch:没有ItemWriter的Tasklet

我在没有ItemWriter的情况下定义了我的tasklet,如下所示:

   

我收到了这个错误:

配置问题: 元素既没有’writer’属性也没有元素。

你有什么主意吗 ? 谢谢

嗯,在一大块,一个读者和一个作家是强制性的! 但是,ItemProcessor是可选的。

这来自官方文件:

5.1.1。 配置步骤

尽管Step的必需依赖项列表相对较短,但它是一个非常复杂的类,可能包含许多协作者。 为了简化配置,可以使用Spring Batch命名空间:

       

上面的配置表示创建面向项目的步骤所需的唯一依赖项:

reader – 提供处理项目的ItemReader。

writer – 处理ItemReader提供的项目的ItemWriter。

transaction-manager – Spring的PlatformTransactionManager,用于在处理过程中开始和提交事务。

job-repository – 将在处理期间(就在提交之前)定期存储StepExecution和ExecutionContext的JobRepository。 对于内联(在a中定义的内容),它是元素的属性; 对于独立步骤,它被定义为的属性。

commit-interval – 提交事务之前将处理的项目数。

应该注意的是,job-repository默认为“jobRepository”,而transaction-manager默认为“transactionManger”。 此外,ItemProcessor是可选的,不是必需的,因为该项可以直接从阅读器传递给编写器。

我们可以定义一个没有编写器的块(只是一个读取器+处理器),我设法这样做了。 似乎为了传递包含chunk的writer步骤必须inheritance抽象步骤父类,如下所示:

          

问题解决了,谢谢!