今天项目上线时遇到一个问题,在本地tomcat测试没有问题的代码,拿到weblogic容器中就行不通了。根据项目运行的错误日志,定位到jsp页面中的jstl标签的问题。
错误代码:
<c:if test="${list.size() == 0}">
list中没有元素
</c:if>
错误原因:
在jstl标签中,没有size()方法或者是size属性。
错误纠正:
在jstl中,获得list对象的长度大小,正确方法如下:fn:length(list)。前提是先提前导入
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<c:if test="${fn:length(list) == 0}">
list长度为0
</c:if>