问题描述:
使用 <c:forEach>
标签时,取不出数据。一直以为是c标签的问题,折腾了好久,发现是EL表达式失效导致的。
<c:forEach items="${emps}" var="emp">
<tr>
<td>${emp.id}</td>
<td>${emp.lastName}</td>
<td>${emp.email}</td>
<td>${emp.gender==0 ? "Female" : "Male"}</td>
<td>${emp.department.departmentName}</td>
<td>Edit</td>
<td>Delete</td>
</tr>
</c:forEach>
解决方案:
声明 isELIgnored="false"
,如下:
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" %>
可能跟版本或者开发环境有关吧,其值可能为 true
,页面就忽略了 EL 表达式,导致 EL 表达式失效进而无法取到数据。