我在servlet中定义了一个列表集合,如下所示:
List<BookingRecord> list = getLast24();
req.setAttribute("records", list);
然后在JSP中,我想使用jstl进行以下算法。如果list不为空,请执行XXXX,否则执行YYYY。
我做了类似的事情:
<c:when test="${not empty records}">
<table border="1">
<tbody>
<tr>
<th>id</th>
<th>hotel</th>
<th>room</th>
<th>guest id</th>
<th>start date</th>
<th>end date</th>
<th></th>
</tr>
<c:forEach items="${records}" var="record">
<tr<c:if test="${record.endDate != null }"> style="background-color: gainsboro"</c:if>>
<td>${record.id}</td>
<td>${record.hotelName}</td>
<td>${record.roomNumber}</td>
<td>${record.personId}</td>
<td><fmt:formatDate value="${record.startDate}" pattern="yyyy-MM-dd HH:mm"/></td>
<td><fmt:formatDate value="${record.endDate}" pattern="yyyy-MM-dd HH:mm"/></td>
<td>
<c:if test="${record.endDate == null }">
<form action="checkout" method="post">
<input type="hidden" name="recordId" value="${record.id}"/>
<input type="submit" value="退房"/>
</form>
</c:if>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</c:when>
<c:otherwise>
<h1>目前24小时内,没有订房</h1>
</c:otherwise>
但是tomcat在
给了我一个例外<c:when test="${not empty records}">
如果有人可以帮助我,我感激不尽。
答案 0 :(得分:2)
<c:choose>
<c:when test="${not empty propertyValue}">
<option value="${fonts}" selected="selected">${fonts}</option>
</c:when>
<c:otherwise>
<option value="${fonts}">${fonts}</option>
</c:otherwise>
</c:choose>
答案 1 :(得分:1)
将jstl标签中的when替换为if。
<c:if test="${not empty records}">
答案 2 :(得分:1)
请参阅选择哪种类似开关案例的语法,或者如果您想要if语句
,请使用<c:choose>
<c:when test="${salary <= 0}">
Salary is very low to survive.
</c:when>
<c:when test="${salary > 1000}">
Salary is very good.
</c:when>
<c:otherwise>
No comment sir...
</c:otherwise>
</c:choose>
另请参阅this了解jstl标签:
答案 3 :(得分:-1)
使用c:select tag包装代码。它应该