Frage

Guten Morgen!!

Ich habe ein dynamisches Datentatier und verwende Spalten mit Richfaces, aber wenn ich Filterby den Wert zuweist, funktioniert es nicht. Kann mir jemand helfen? Wehe ist mein Code ..

<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>
War es hilfreich?

Lösung

Versuchen Sie hinzu sortBy="#{column.nomeAtributo}" und sortOrder zu rich:columns es wird klappen. Ich habe erfahren, dass wir solche Probleme in der frühen Version haben. Bitte versuchen Sie es mit RF 3.2.1. Ich denke, es sollte das Problem sonst lösen.

Andere Tipps

Nach dem, was ich sehen kann, verwenden Sie das falsche Attribut in Filterby. Sie möchten Nesting verwenden, um anzugeben, wo das Element zum Sortieren gesucht werden soll. Etwas wie #{atendimento(column.nomeAtributo)}, aber ich bin nicht an einem Ort, an dem ich es testen kann. Dies bewertet den Namen der Spalte im Wesentlichen im Wesentlichen und ruft dann den Getter mit demselben Namen von Ihrem Zeilenobjekt auf atendimento. Tut mir leid, wenn die Nistsyntax nicht funktioniert, aber ich denke, das Nestieren ist Ihre Antwort.

Wenn #{atendimento[column.nomeAtributo]} Arbeitet den Wert, das dann zu drucken ist, aber ich würde nur erwarten, dass er funktioniert, wenn Nomeatributo eine Ganzzahl für Array -Referenzierungen ist.

Ich bin auf ein weiteres Problem mit Filterby gestoßen, das Probleme verursachen kann. Wir hatten den Filterby in einem bestimmten Geschäftszustand (aktiv, abgelaufen), aber nicht in anderen. Der Zustand der Entität hatte nichts mit dem tatsächlichen Filterwert zu tun.

Als ich einen Filtermethod benutzte und die Filterung auf der Hintergrundbohne machte, funktionierte es gut. Es stellte sich heraus, dass Filterby die gesamte Form auf meinem InputText für den Filtermethod, den ich Ajaxsingle verwendet habe, eingereicht hat. Eine Validierung schlug fehl, als Sie dieses Formular insgesamt eingereicht haben, der Validierungsfehler wurde jedoch verschluckt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top