1

我有一个简单的项目编写器,如下所示:

public class EntityItemWriter<T> implements ItemWriter<T>, InitializingBean {

  private String name;

  @Override
  public void write(List<? extends T> items) throws Exception {
    //writes to db
  }

  @Override
  public void afterPropertiesSet() throws Exception {
    Assert.hasLength(name);   //assertion fails
  }

  public void setName(String name) {
    this.name = name;
  }
}

我的 job-definition.xml 有一个这样的 bean:

<bean id="EntityItemWriter" class="com.example.EntityItemWriter" scope="step">
    <property name="name" value="someRandomString" />
</bean>

当批处理作业处于写入步骤时,EntityItemWriter 的 name 属性未设置为“someRandomString”并保持为空。有什么我想念的吗?

spring-batch 版本:2.1.0.M3
spring 版本:3.1.0.RELEASE

4

0 回答 0