JSTL 迭代对象列表

2022-09-01 08:06:06

我在jsp中得到了一个对象列表“myList”。我得到的对象属于例如“MyClass”。我想通过JSTL迭代这个列表。

JSP代码如下:

<c:forEach items="myList" var="element">    
  <tr>
    <td>${element.getStatus()}</td>
    <td>${element.getRequestType()}</td>
    <td>${element.getRequestedFor()}</td>
    <td>${element.getTimeSubmitted()}</td>
  </tr>
</c:forEach>

我得到例外 :

 00000024 WebApp  E   [Servlet Error]-[/requestHistory.jsp]: com.ibm.ws.jsp.translator.JspTranslationException: JSPG0227E: Exception caught while translating /requestHistory.jsp:  
    /requestHistory.jsp(31,6) --> JSPG0122E: Unable to parse EL function ${UserProcessRequests.getStatus()}.

我正在使用的Taglib是:

 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
 <%@ page isELIgnored="false"%>

答案 1

有一个错误。请参阅此行 。${} 周围的 “myList” 丢失了。<c:forEach items="${myList}" var="element">

<c:forEach items="${myList}" var="element"> 
  <tr>
    <td>${element.status}</td>
    <td>${element.requestType}</td>
    <td>${element.requestedFor}</td>
    <td>${element.timeSubmitted}</td>
  </tr>
</c:forEach>

答案 2

将其替换为

`${element.status}`

JSTL将自行寻找标准的getters setters