当我显示试图调用getCurrentlocation()type中定义的函数的jsp页面时,出现异常Person。该函数${person.currentlocation}在jsp文件中调用。
getCurrentlocation()
Person
${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投掷时,在幕后发生了以下情况:
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); }
您应该在堆栈跟踪中进一步查找真正的根本原因。完整的堆栈跟踪通常仅在服务器日志中可用。真正的根本原因是堆栈跟踪的最底层异常。例如,下面的一个是由于NullPointerException在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的问题。只是您自己的代码导致了问题。