我正在尝试获取UIRepeat
的子元素,我希望它包含所有迭代的内容。但是,我只看到一次迭代的内容。
我想我必须遍历com.sun.faces.facelets.component.UIRepeat
对象,但是如何做到这一点?我看到有一个getSize()
函数,但setIndex()
是private
,DataModel
包含对象,而不是元素。
此外,我在参考文档中找不到com.sun.faces.facelets.component.UIRepeat
类:http://download.oracle.com/docs/cd/E17802_01/j2ee/javaee/javaserverfaces/2.0/docs/pdldocs/facelets/ui/repeat.html。
主要问题是我一直在用<h:selectOneRadio>
迭代地显示<ui:repeat>
个元素;我想从托管bean中更改<h:selectOneRadio>
元素的值。
提前致谢, 丹尼尔
答案 0 :(得分:0)
我现在不需要您的代码或需求,但不是重复,您可以尝试c:forEach。后者在另一个渲染阶段工作:forEach重复forEach块内的html内容,而repeat实际重复xhtml内容(然后呈现)。
答案 1 :(得分:0)
我想从托管bean更改
<h:selectOneRadio>
元素的值。
只需从托管bean内部直接访问其value
属性。
假设
<ui:repeat value="#{bean.radios}" var="radio">
<h:selectOneRadio value="#{radio.selected}">
<f:selectItems value="#{radio.selectItems}" />
</h:selectOneRadio>
<ui:repeat>
只是做
radios.get(index).setSelected(newValue);