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才能使用代码。

  1. 从here下载Jar文件,并将它们放在WEB-INF/lib文件夹中。
  2. 如果您使用maven添加依赖项。
  3. 增加您的JSP页面顶部的标签库:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  4. 重建项目

现在你可以使用JSTL在JSP。

回答:

您正在设置请求属性,但在sessionScope.messageList上迭代。

使用requestScope.messageList或简单地messageList

以上是 JSP迭代不显示 的全部内容, 来源链接: utcz.com/qa/262851.html

回到顶部