【发布时间】:2017-07-27 18:04:04
【问题描述】:
您好,我正在尝试将两个编写器添加到 Spring Batch Compositeitemwriter 中。我收到一条错误消息:
The method setDelegates(List<ItemWriter<? super MyObject>>) in the type CompositeItemWriter<MyObject> is not applicable for the arguments (List<ItemWriter<MyObject>>)
下面是我的代码
public ItemWriter<MyObject> myWriter(){
ItemWriter<MyObject> myWriter = new myWriter();
return myWriter;
}
public ItemWriter<MyObject> myOtherWriter(){
ItemWriter<MyObject> myOtherWriter = new MyOtherWriter();
return myOtherWriter;
}
public CompositeItemWriter<MyObject> compositeItemWriter(){
CompositeItemWriter<MyObject> writer = new CompositeItemWriter<MyObject>();
List<ItemWriter<MyObject>> writerList = new ArrayList<ItemWriter<MyObject>>();
writerList.add(myWriter());
writerList.add(myOtherWriter());
writer.setDelegates(writerList); //<-- ERROR HERE
return writer;
}
我找不到任何不使用 xml 的复合项目编写器的强大代码示例。我知道我的错误与泛型类型参数有关,我对此知之甚少。谁能解释为什么上面的代码不起作用以及如何解决它? Multiple itemwriters in Spring batch 这是我能找到的最接近的,但它使用泛型类型,这也会给我一个错误。
感谢您的帮助!我是春季批次的新手。
【问题讨论】:
标签: java spring-batch