JSP迭代不显示
我传递一个列表从servlet到JSP如下:JSP迭代不显示
<c:forEach items="${sessionScope.messageList}" var="msg"> <tr>
<td>Agent ID: <c:out value="${msg.getID()}"/></td>
</tr>
</c:forEach>
的Web应用程序:
Agent agent = (Agent) request.getSession().getAttribute("agent"); List<Message> messageList = agent.mailbox.getMessages();
request.setAttribute("messageList", messageList);
request.getRequestDispatcher("/message.jsp").forward(request, response);
然后,我在JSP文件如下迭代它执行和工作正常,没有错误等......但是,列表的输出没有被显示。
回答:
我需要安装JSTL才能使用代码。
- 从here下载Jar文件,并将它们放在WEB-INF/lib文件夹中。
- 如果您使用maven添加依赖项。
- 增加您的JSP页面顶部的标签库:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- 重建项目
现在你可以使用JSTL在JSP。
回答:
您正在设置请求属性,但在sessionScope.messageList
上迭代。
使用requestScope.messageList
或简单地messageList
。
以上是 JSP迭代不显示 的全部内容, 来源链接: utcz.com/qa/262851.html