JSTL迭代对象列表

时间:2011-05-05 05:47:23

标签: java jsp jstl iteration

我在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"%>

2 个答案:

答案 0 :(得分:60)

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

<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>

答案 1 :(得分:13)

替换为

`${element.status}`

JSTL将自行寻找标准的getter setter