2009-12-18 36 views
0

早上好!Rich:Columns - FilterBy

我有一個動態數據表,我正在使用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> 
+1

作爲旁註 - 建議在代碼中使用英文。 – Bozho 2009-12-18 12:37:17

+0

對不起,我是巴西人,我盡我所能翻譯 – Tyemy 2009-12-18 13:05:58

回答

0

嘗試增加sortBy="#{column.nomeAtributo}"sortOrderrich:columns它會工作。 我開始知道我們在早期版本中有這樣的問題。 請嘗試RF 3.2.1。我認爲它應該解決問題,否則。

+0

沒有工作 我見過的例子,列的id與索引連接,這是必要的嗎? – Tyemy 2009-12-18 13:10:35

0

從我能看到你在filterBy中使用錯誤的屬性。你想使用嵌套來指定在哪裏找到要排序的元素。像#{atendimento(column.nomeAtributo)},但我不在我可以測試它的地方。實質上做什麼是評估列的名稱,然後調用與您的行對象atendimento相同的名稱的getter。對不起,如果嵌套語法不起作用,但我認爲嵌套是你的答案。

如果#{atendimento[column.nomeAtributo]}作品打印值,那麼這就是你想要什麼,但我只期望它的工作,如果nomeAtributo是數組引用的整數。

0

我遇到了另一個可能會導致問題的filterBy問題。我們使用filterBy處理特定業務狀態(活動,過期等)的實體,但不處理其他實體。實體的狀態與實際的過濾器值無關。

當我使用filterMethod並對後臺bean進行過濾時,它工作正常。事實證明,filterBy提交整個表單,而我的inputText爲filterMethod我使用ajaxSingle。當您提交該表單時驗證失敗,但驗證錯誤被吞噬。

相關問題