je的各位牛牛们,帮我解决下这个问题吧。
我在使用jstl遍历集合的时候报了这个异常,不知道怎么解决
遍历的代码是这些
[code="html"]
${classroom.classroomId }
${classroom.roomName }
${classroom.capacity }
${classroom.description }
/c:forEach[/code]
是通过重写SimpleFormController的referenceData(HttpServletRequest request)方法初始化result参数的
[code="java"]
protected Map referenceData(HttpServletRequest request) throws Exception{
QueryResult result = classroomService.findClassrooms(1);
System.out.println(result);
return new ModelMap().addObject("result", result.getResult());
}
[/code]
结果报了异常
javax.servlet.ServletException: javax/el/ValueExpression
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:273)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:240)
org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:252)
org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1173)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:901)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
如果直接用EL表达式输出result,像${result}这样而不是循环,能正确输出集合内的数据:
[[classroomId:103,roomName:信工101,capacity:120,description:多媒体教室], [classroomId:104,roomName:信工102,capacity:120,description:多媒体教室], [classroomId:105,roomName:信工103,capacity:120,description:多媒体教室], [classroomId:106,roomName:信工104,capacity:120,description:多媒体教室], [classroomId:107,roomName:信工105,capacity:60,description:多媒体教室]]
为什么一用 就出错了呢?