如何使以下代码生效?
<c:if test="${null != searchResults}" >
<c:forEach items="${searchResults}" var="result" varStatus="status">
我尝试了很多不同的变体,例如:
<c:if test="${searchWasPerformed}" >
或
<c:if test="<%=request.getAttribute("searchWasPerformed") %>" >
甚至
<% boolean b = null != request.getAttribute("searchResults"); %>
<c:if test="${b}" >
看起来很难看:/ 但我继续得到
org.apache.jasper.JasperException: /WEB-INF/jsp/admin/admin-index.jsp(29,2) PWC6236: According to TLD or attribute directive in tag file, attribute test does not accept any expressions
我该如何解决这个问题?
答案 0 :(得分:22)
检查您使用的JSTL标记库的版本。它应该是1.1,所以你应该(注意URI):
<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>