2011-07-18 8 views
3

JSF 2.0でPrimefaces 3.0を使用しています。拡張機能を有効にしたデータテーブルがあります。ユーザーがrowTogglerをクリックしたときにBeanメソッドを呼びたいと思っていました。基本的には、ユーザーが展開ボタンをクリックしたときにのみ、展開の詳細をロードしたかったのです。ドキュメントの行を展開するためのサーバー側のコールバックが表示されません。この問題の回避策があるかどうか教えてください。手動から;-)データ可能な行の展開イベント

問題ないはずですので

おかげに関しては、 連珠

+0

これは問題追跡ツール(下記URL)にあります。私はこれも楽しみにしています。 http://code.google.com/p/primefaces/issues/detail?id=2277 – Howard

答えて

0

Primefaces' rowTogglerはすでにAjaxでコンテンツをロードします。

P:rowTogglerコンポーネントは場所を展開/折りたたみアイコン、折り畳まれた行をクリックすると、拡張コンテンツがajaxで読み込まれます。

public void onRowToggle(ToggleEvent event) { 
    FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_INFO, 
             "Row State " + event.getVisibility(), 
             "Model:" + ((Car) event.getData()).getModel()); 

    FacesContext.getCurrentInstance().addMessage(null, msg); 
} 

XHTML

<p:ajax event="rowToggle" listener="#{tableBean.onRowToggle}" update=":form:growl" /> 

:ハワードは、私は、これはPF 3.4で実装されたことを見ることができ、質問のコメントで提供されるリンクに続き

5
+1

私はこのアプローチを使用しており、ユーザーがデータテーブルをフィルタリングするまでうまくいきます。それからevent.getData()は無効なデータ(あなたのケースでは新しいCar()オブジェクト)を返します。なぜこのようなことが起こっているのでしょうか?ありがとう。 –

+0

少し遅れましたが、同じ問題がありましたが、私の場合、ソリューションは 'filteredValue'属性をデータテーブルに追加することでした。 – burubum

関連する問題