我对PropertyUtils.getProperty(bean, fieldName)
方法有一个奇怪的问题,我得到了java.lang.NoShuchMethodException
。
假设我们有一个名为pojo的简单Java类:
public class Pojo {
public java.util.Date aDate;
public java.util.Date theDate;
public Pojo(){}
}
和一个调用者类
public class TestPojo{
public static void main(String[] args){
Pojo p = new Pojo();
p.setADate(new Date());
p.setTheDate(new Date());
PropertyUtils.getProperty(p, "theDate");
PropertyUtils.getProperty(p, "aDate");
}
}
第一个
PropertyUtils.getProperty
调用工作正常,第二个调用throw
的NoSuchMethodExeption
。我想知道我是否缺少一些愚蠢的东西,或者这确实是一个错误:)
最佳答案
我不了解PropertyUtils.getProperty(p, "TheDate");
如何工作,因为属性名称不正确。
尝试这个:
public class TestPojo{
public static void main(String[] args){
Pojo p = new Pojo();
p.setADate(new Date());
p.setTheDate(new Date());
PropertyUtils.getProperty(p, "theDate");
PropertyUtils.getProperty(p, "aDate");
}
}
链接到PropertyUtils method
为了解决您的问题,有两种解决方案:
正如Xavi所说,这是reported bug
关于java - 尝试获取简单属性值时,PropertyUtils.getProperty失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7529411/