0

早上好!!

我有一个动态数据表,并且正在使用 Richfaces 的列,但是当我将值分配给 FilterBy 时,它不起作用。谁能帮我?糟糕的是我的代码..

<rich:dataTable id="dtAtendimento" value="#{CadastroAtendimentoTecnico.listaAtendimento}" var="atendimento">
    <rich:columns index="index" value="#{CadastroAtendimentoTecnico.listaCampos}" var="column" filterBy="#{column.nomeAtributo}" filterEvent="onKeyUp">
        <f:facet name="header">
            <h:outputText value="#{column.label}"/>
        </f:facet>
        <h:outputText value="#{atendimento[column.nomeAtributo]}"/>
    </rich:columns>
</rich:dataTable>
4

3 回答 3

0

尝试添加它sortBy="#{column.nomeAtributo}" 会起作用。我知道我们在早期版本中有这样的问题。请尝试 RF 3.2.1。我认为它应该以其他方式解决问题。sortOrderrich:columns

于 2009-12-18T12:04:01.623 回答
0

从我可以看到您在 filterBy 中使用了错误的属性。您想使用嵌套来指定在何处查找要排序的元素。类似的东西#{atendimento(column.nomeAtributo)},但我不在一个可以测试它的地方。这实质上是评估列的名称,然后从行对象中调用具有相同名称的 getter atendimento。抱歉,如果嵌套语法不起作用,但我认为嵌套是您的答案。

如果#{atendimento[column.nomeAtributo]}可以打印该值,那么这就是您想要的,但我只希望它在 nomeAtributo 是用于数组引用的整数时才有效。

于 2011-03-21T21:15:59.387 回答
0

我遇到了 filterBy 的另一个问题,这可能会导致问题。我们通过过滤器处理处于特定业务状态(活动、过期等)的实体,而不是其他状态的实体。实体的状态与实际过滤器值无关。

当我使用 filterMethod 并在支持 bean 上进行过滤时,它工作正常。事实证明,filterBy 在我使用 ajaxSingle 的 filterMethod 的 inputText 上提交了整个表单。当您总共提交该表单时验证失败,但验证错误被吞下。

于 2012-12-17T11:02:40.453 回答