java – ELException错误读取类型

前端之家收集整理的这篇文章主要介绍了java – ELException错误读取类型前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当我显示我的jsp页面,尝试在Person类型中调用一个定义的getCurrentlocation()函数时,我收到异常.
函数由jsp文件中的${person.currentlocation}调用.
type Exception report

message javax.el.ELException: Error reading 'currentlocation' on type **.person.Person

description The server encountered an internal error that prevented it from fulfilling this request.

exception 

org.apache.jasper.JasperException: javax.el.ELException: Error reading 'currentlocation' on type **.person.Person

我对jsp技术很新.也许有人可以帮助我!

谢谢,
本杰明

解决方法

这个特殊的ELException是一个包装器异常.这通常只在调用getter方法本身引发异常时抛出.当抛出ELException时,封装下方会发生以下事情:
Object bean;
String property;
Method getter;
// ...

try {
    getter.invoke(bean);
} catch (Exception e) {
    String message = String.format("Error reading '%s' on type %s",property,bean.getClass().getName());
    throw new ELException(message,e);
}

您应该在堆栈跟踪中进一步了解真正的根本原因.完整的堆栈跟踪通常仅在服务器日志中可用.真正的根本原因是堆栈跟踪的最底层的例外.例如.下面的一个是由getter方法中抛出的NullPointerException引起的.

javax.el.ELException: Error reading 'currentlocation' on type **.person.Person
    at ...
    at ...
    at ...
Caused by: java.lang.NullPointerException
    at **.person.Person.getCurrentlocation(Person.java:42)
    at ...
    at ...

关于真正根本原因的信息(异常类型和行号)应该给你足够的线索来确定问题.

再次,这一般不是EL的问题.这只是你自己的代码,导致了这个问题.

猜你在找的Java相关文章