JSP迭代未显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSP迭代未显示相关的知识,希望对你有一定的参考价值。
我将servlet中的列表传递给JSP,如下所示:
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文件中迭代它,如下所示:
<c:forEach items="${sessionScope.messageList}" var="msg">
<tr>
<td>Agent ID: <c:out value="${msg.getID()}"/></td>
</tr>
</c:forEach>
Web应用程序执行并正常工作,没有错误等...但是,列表中的输出未显示。
答案
I needed to install JSTL to use the code.
- 从here下载Jar文件并将它们放在WEB-INF / lib文件夹中。
- 如果您使用maven添加依赖项。
- 在JSP页面顶部添加taglib:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- 重建项目
现在您可以在JSP中使用JSTL。
另一答案
您正在设置请求属性,但会在sessionScope.messageList
上进行迭代。
使用requestScope.messageList
,或简单地使用messageList
。
以上是关于JSP迭代未显示的主要内容,如果未能解决你的问题,请参考以下文章