如何使用java EL基于jsf中的列表大小呈现数据表?
答案 0 :(得分:14)
三种方式:
添加额外的吸气剂。
public int getSearchListSize() {
return searchList.size();
}
与
<h:dataTable rendered="#{bean.searchListSize > 2}">
使用JSTL fn:length()
功能。如果尚未安装JSTL(只需在/WEB-INF/lib
中删除jstl-1.2.jar)并在JSP顶部声明fn
taglib,如下所示:
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
并按如下方式使用:
<h:dataTable rendered="#{fn:length(bean.searchList) > 2}">
使用JBoss EL(“增强型EL”)作为JSF EL实现。它向后兼容标准的JSF EL实现。在/WEB-INF/lib
中删除jboss-el.jar并在web.xml
中声明以下内容,假设您正在使用Mojarra JSF实现:
<context-param>
<param-name>com.sun.faces.expressionFactory</param-name>
<param-value>org.jboss.el.ExpressionFactoryImpl</param-value>
</context-param>
这样您就可以直接访问非getter方法:
<h:dataTable rendered="#{bean.searchList.size() > 2}">