2012年5月30日星期三

Java Spring Error : Bean property '*****' is not writable or has an invalid setter method.

Java Spring Error : Bean property '*****' is not writable or has an invalid setter method.

项目调试出现这样的错误。检查发现原因是Spring 的命名规则惹的祸。

解决方法:下面2点的命名必须一致(除get和set方法第一个字母要大写。)

1,

protected IUserDAO iuserdao;

public IUserDAO getIuserdao() {
    return iuserdao;
}
public void setIuserdao(IUserDAO iuserdao) {
    this.iuserdao = iuserdao;
}

2,

    <bean id="userServiceImpl" class="com.app.user.service.impl.UserServiceImpl">
      <property name="iuserdao" ref="userDAOImpl"/>
    </bean>

 

关于为什么要符合这样的命名规则,估计涉及到spring的源代码的设计。


TAG: