0

最近、アプリケーションをJSF1.1からJSF1.2に移植しました。その過程で、トマホークを削除し、代わりにリッチを使用することにしました。

次に、テーブルの各行に対して展開可能/折りたたみ可能なdetailVievを作成する方法が必要です。

私が考えることができる唯一のことは、これらの線に沿ったものです(docs.jboss.comのドキュメントから適応):

<rich:dataTable value="#{capitalsBean.capitals}" var="capitals">
    <rich:column>
        ...
    </rich:column>
    <rich:subTable value="#{capitals.details}" var="detail" ajaxKeys="#{bean.ajaxSet}" binding="#{bean.subtable}" id="subtable" rendered="detail.detailOpened">
        <rich:column>
            ...
        </rich:column>
    </rich:subTable>
</rich:dataTable>

私はそのような何かがうまくいくと思います。問題は、使用するオブジェクトにgetDetailOpenedとsetDetailOpenedを追加するか、これら2つのメソッドを提供する別のオブジェクトで各オブジェクトをラップする必要があることです。

誰かがより良い方法、またはそれがどのように行われるべきかを知っていますか?

4

1 に答える 1

1

JSFを回避する方法として、これらのプロパティを含むメソッドをBean(またはラッパーBean)に追加することがよくあります。きれいではありませんが、機能します。

現時点で私が考えることができる他の唯一のオプションは、JavaScript関数を使用して詳細ビューの状態を切り替えることです。これは多くの理由で理想的ではありませんが、サーバー側の状態を維持する必要がなくなります。

于 2008-12-12T11:57:15.063 に答える