【发布时间】:2014-01-12 18:30:54
【问题描述】:
我在我的 JSP 项目中使用 javax.servlet.jsp.jstl-1.2.1 lib。
这是我的代码:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
// other classes are included too
<%
Tools tools = new Tools();
news [] list = tools.getEvent();
%>
<html>
<body>
<c:forEach var="i" items="${list}"> <-- cannot resolve variable 'list', why?
/* Do something */
</c:forEach>
</body
</html>
如您所见,'list' 变量 extsts 但对于 forEach 不可见。我错过了什么? c:out 工作正常。
它会因java.lang.ClassNotFoundException: org.apache.jsp.index_jsp 签名而崩溃。
奇怪的事情发生了...... 我试图执行这个:
<c:forEach var="i" begin="1" end="5">
<c:out value="works"/>
</c:forEach>
但我得到了同样的错误..
【问题讨论】:
-
你为什么要把 scriplets 和 JSTL 混为一谈?您不能在 EL 表达式中使用在 scriplets 中定义的变量。而是将对象添加为请求属性。
-
@Rohit 谢谢,请阅读主题更新