无法将属性绑定到自定义ItemWriter

我有一个简单的项目编写器看起来像这样:

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”并保持为null . 有什么我想念的吗?

spring 批量版本:2.1.0.M3
spring版本:3.1.0.RELEASE

回答(0)