1. 背景
spring mvc + jsp + tomcat + docker 的老项目
2. 错误
Chrome 无法打开该页面,并且控制台中出现此错误:
net::ERR_INCOMPLETE_CHUNKED_ENCODING 200
排查通过 tomcat 的 localhost.2022-06-28.log
发现:
28-Jun-2022 10:04:39.493 SEVERE [http-nio-8080-exec-5] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [An exception occurred processing [/WEB-INF/view/caseStepInfo.jsp] at line [182]
179: <c:if test="${item.id >= 30000 && item.id<40000}">
180: <c:set value="fun3000info" var="fundisnoneinfo"/>
181: </c:if>
182: <tr name="${fundisnoneinfo}" style="display: none" onclick="setCaseFunction('${item.funname}')">
183: <td style="text-align: left">${item.id}</td>
184: <td style="text-align: left">${item.funname}</td>
185: <td style="text-align: left">${item.stepname}</td>
Stacktrace:] with root cause
javax.el.PropertyNotFoundException: Property [funname] not found on type [com.auto.dto.DriverFunctionDTO]
at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:260)
at javax.el.BeanELResolver$BeanProperties.access$300(BeanELResolver.java:212)
at javax.el.BeanELResolver.property(BeanELResolver.java:333)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:92)
.....
3. 解决
原来重构代码,调整了 VO 对象的字段,使用 EL 表达式获取 VO 属性的时候, 属性名未进行修改,导致出错,修改后,正常访问;