可以在richfaces数据表中定义标签“var”的动态值吗?
我有一个内部包含丰富数据表的组件,我想使用自定义“var”名称。
我这样做
组件:
<rich:extendedDataTable id="#{id}_list" cellspacing="0" rows="#{rows}" var="#{itemName}"
value="#{data}">
页:
<wh:list id="f" data="#{deviceListBean.data}" rows="20" itemName="item">
但我得到了这样的例外:
javax.servlet.ServletException: var cannot be EL-expression
javax.faces.webapp.FacesServlet.service(FacesServlet.java:606)
我希望能够使用自定义“var”名称。可能有其他方法可以做到这一点吗?
答案 0 :(得分:2)
这是一个技巧(name
的{{1}}属性可以是EL表达式):
ui:param
答案 1 :(得分:0)
var
是您用来引用在数据表中循环的每个项目的名称。
你会做类似
的事情<rich:extendedDataTable id="#{id}_list" cellspacing="0" rows="#{rows}" var="_dataItem"
value="#{data}">
在数据表中,您可以使用_dataItem
来表示当前值
<rich:column>
<h:outputLabel value="#{_itemData.myValue}"/>
</rich:column>
将其视为定义以下for
for(Item _dataItem : data) {
System.out.println(_dataItem.myValue);
}