在ui:data中的DataTable中的selectBooleanCheckbox

时间:2009-07-06 13:09:56

标签: java jsf seam richfaces

我在ui:repeat中的多个DataTables中使用多个selectBooleanCheckBox时遇到了一些问题。

像这样的东西

<ui:repeat var="f" value="#{mybean.values}">
    <rich:dataTable value="#{f.values}" var="v">
        <rich:column>
            <h:selectBooleanCheckbox value="#{mybean.selected[v.id]}"/>
        </rich:column>
    </rich:dataTable>
</ui:repeat>

在支持bean中,在选定的地图中,我发现了错误的ID。

另一个奇怪的行为是,当我使用sortBy属性对列进行排序时,它会对所有呈现的列进行排序。

我在jira上找到了错误

RichFaces JIRA

如果我使用

<c:forEach />

标签代替

<ui:repeat />

稍微好一点(表之间没有排序,更多的值在支持bean中是正确的),但有时它仍然是错误的。

有什么想法吗?

谢谢,

2 个答案:

答案 0 :(得分:1)

尝试使用a4j:repeat

我经常在ui:repeat内使用Richfaces更新后端的值时遇到问题(尽管通常使用a4j:commandLink/commandButton)。

编辑:你有没有为你要添加到列表/集合的类中定义好的equals()和hashcode()?

答案 1 :(得分:0)

我已经解决了对值的排序,因为我绑定了一个Set。我使用过SortedSet。不管怎样,谢谢。