您如何获得JSF表达式语言中列表的长度?

问题描述

是的,由于Java API创建委员会中的一些天才决定,即使某些类具有size()成员或length属性,但它们将无法实现,getSize()或者getLength()JSF和大多数其他标准都将无法实现,所以您将无法做自己想要的事情。

有两种方法可以做到这一点。

一:向您的Bean添加一个返回长度的函数

在MyBean类中:
public int getSomelistLength(){返回this.somelist.length; }

在您的JSF页面中:
#{MyBean.somelistLength}

第二:如果您使用的是Facelets(哦,天哪,为什么不使用Facelets!),则可以添加fn命名空间并使用length函数

在JSF页面中:
#{fn:length(MyBean.somelist)}

解决方法

如何ArrayList使用JSF EL表达式获得an的长度?

#{MyBean.somelist.length}

不起作用。