EL表达式中的 javax.el.PropertyNotFoundException 分析
2016-02-07 20:00
531 查看
1. javax.el.PropertyNotFoundException 一种可能,你太累了,写错了表达式,比如
看看 items=”uAddrsList” , 羞羞
解决方案:去休息一下
去休息一下
2. javax.el.PropertyNotFoundException 第二种请款可能是没有 model 对应的 getter、setter;其次,还有要注意在eclipse 里面自动生成的 boolean 的 getter、setter 在 EL/或者一些sql映射的时候都不起作用!!!
原来的model中的域和方法如下:
解决方法:添加有效形式的getter/setter
严重: Servlet.service() for servlet jsp threw exception javax.el.PropertyNotFoundException: Property 'city' not found on type java.lang.String at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:290) at javax.el.BeanELResolver$BeanProperties.access$300(BeanELResolver.java:243) at javax.el.BeanELResolver.property(BeanELResolver.java:377) at javax.el.BeanELResolver.getValue(BeanELResolver.java:97) at org.apache.jasper.el.JasperELResolver.getValue(JasperELResolver.java:104) at org.apache.el.parser.AstValue.getValue(AstValue.java:183) at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184) at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:944) at org.apache.jsp.view.front.SelectDeliverAddress_jsp._jspx_meth_c_005fforEach_005f0(SelectDeliverAddress_jsp.java:122) at org.apache.jsp.view.front.SelectDeliverAddress_jsp._jspService(SelectDeliverAddress_jsp.java:77) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(Ap e902 plicationFilterChain.java:208) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:411) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338) at com.shan.controller.front.SelectDeliverAddressServlet.doGet(SelectDeliverAddressServlet.java:34) at javax.servlet.http.HttpServlet.service(HttpServlet.java:624) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at com.shan.filter.EncodingFilter.doFilter(EncodingFilter.java:23) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2476) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2465) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) 二月 07, 2016 7:21:04 下午 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet [com.shan.controller.front.SelectDeliverAddressServlet] in context with path [/alishop] threw exception [An exception occurred processing JSP page /view/front/SelectDeliverAddress.jsp at line 15 12: <c:forEach items="uAddrsList" var="addr"> 13: 14: <%-- ${addr.province }<br /> --%> 15: ${addr.city }<br />${addr.town }<br />${addr.detail}<br /> 16: ${addr.isDefault}<br />${addr.zipCode}<br /> 17: </c:forEach> 18: </body>
看看 items=”uAddrsList” , 羞羞
解决方案:去休息一下
去休息一下
2. javax.el.PropertyNotFoundException 第二种请款可能是没有 model 对应的 getter、setter;其次,还有要注意在eclipse 里面自动生成的 boolean 的 getter、setter 在 EL/或者一些sql映射的时候都不起作用!!!
严重: Servlet.service() for servlet jsp threw exception javax.el.PropertyNotFoundException: Property 'isDefault' not found on type com.shan.model.UserAddress at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:290) at javax.el.BeanELResolver$BeanProperties.access$300(BeanELResolver.java:243) at javax.el.BeanELResolver.property(BeanELResolver.java:377) at javax.el.BeanELResolver.getValue(BeanELResolver.java:97) at org.apache.jasper.el.JasperELResolver.getValue(JasperELResolver.java:104) at org.apache.el.parser.AstValue.getValue(AstValue.java:183) at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184) at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:944) at org.apache.jsp.view.front.SelectDeliverAddress_jsp._jspx_meth_c_005fforEach_005f0(SelectDeliverAddress_jsp.java:128) at org.apache.jsp.view.front.SelectDeliverAddress_jsp._jspService(SelectDeliverAddress_jsp.java:77) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:411) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338) at com.shan.controller.front.SelectDeliverAddressServlet.doGet(SelectDeliverAddressServlet.java:34) at javax.servlet.http.HttpServlet.service(HttpServlet.java:624) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at com.shan.filter.EncodingFilter.doFilter(EncodingFilter.java:23) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2476) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2465) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745)
原来的model中的域和方法如下:
private boolean isDefault; ...... public boolean isDefault() { return isDefault; } public void setDefault(boolean isDefault) { this.isDefault = isDefault; }
解决方法:添加有效形式的getter/setter
//addOn for for sql mapping and EL public boolean getIsDefault(){ return isDefault; } public void setIsDefault(boolean isDefault){ this.isDefault = isDefault; }
相关文章推荐
- 2016年1月编程语言排行榜:Java
- Spring基本概念
- Java基础练习 字母图形
- Java 01字串
- What is Dispatcher Servlet in Spring?
- Eclipse for php+Xdebug,搭建php单步调试环境
- 使用commons-daemon启动、关闭java程序
- Spring注解之:@RestController
- Learn what you can do with Spring Boot
- What is a JavaBean exactly?
- Java判断闰年
- Java Fibonacci数列
- java 常量池
- 【番外篇】JVM 内存区域
- 学习日志01 spring入门实例
- javabean对象要实现的接口们和要重写的方法们
- Spring MVC入门 —— 跟开涛学SpringMVC
- java获取系统信息 转载
- 在java虚拟机中的对象访问定位
- Java包装类、拆箱和装箱详解