我使用一个类,使我的Hibernate查询通过FilterCriterionList(排序finder),它一直工作到现在完美,并触发NullPointerException,我完全不知道为什么它被触发。ReflectionUtil getField抛出NullPointerException
这是与下面的值触发空指针的方法(在ReflectionUtil)(请注意,在它抛出的其他价值完美地工作,它只是这些,似乎给出错误):
类型=接口java.util.List中
的fieldName =参数
首先,它抛出NoSuchFieldException和它的第二次运行(因为它是在字段再次调用= getfield命令(type.getSuperclass(),fieldName的);)使得抛一个NullPointerException并且停止死亡(所有这些都发生在我的UnitTest中,而不是一个活的环境但是)。
public static Field getField(Class type, String fieldName) {
Field field = null;
try {
field = type.getDeclaredField(fieldName);
} catch (Exception e) {
if (!type.equals(Object.class)) {
field = getField(type.getSuperclass(), fieldName);
}
}
return field;
}
任何想法为什么发生这种情况(或我能做些什么来解决它?)。我不能真正炫耀更多的代码,因为它非常复杂,它是公司代码。
stacktraces很有用,你知道的。 – Bozho 2011-03-02 09:15:01