你如何从JSF 2.0 Facelets模板调用List.size()?

jsi*_*ght 9 java jsf facelets java-ee-6

在JSF 2.0 Facelets模板中调用list.size()的语法是什么(例如,使用h:outputText元素)?

har*_*rto 23

这个怎么样:

<h:outputText value="#{fn:length(someBean.someList)}" />
Run Code Online (Sandbox Code Playgroud)

您需要functions在JSF页面中引用taglib(URI :) http://java.sun.com/jsp/jstl/functions.


小智 6

试一试 #{myBean.myList.size()}

  • 这不符合标准el.虽然有一些el扩展(例如jboss el)允许这种表示法. (2认同)
  • 这适用于任何Java EE 6 Application Server (2认同)

Jim*_*ows 5

这完全不是JSF 2.0的问题.JSF规范仍然需要一个符合bean规范的类.集合类不会使用该.size()方法执行此操作.它仍然必须如此.getSize().鉴于需要一种"标准"方式来访问类值,我们不会很快在JSF中解决这个问题.有人需要修复集合类.