3

ソース値 (左側) をソートする必要がある Richfaces listShuttle コンポーネントがあります。この目的のために、コンポーネントの値が変更された後、要素をソートするためのバッキング Bean メソッドがあり、listShuttle を再レンダリングしたいと考えています。

xhtml コード:

<a4j:region>
    <rich:listShuttle id="#{id}_listShuttle"
        sourceValue="#{bean.displayedItems}"
        targetValue="#{bean.selectedItems}" var="item"
        fastOrderControlsVisible="false" orderControlsVisible="false"
        fastMoveControlsVisible="false"
        style="margin-right:15px;margin-bottom:15px;">

        <f:converter converterId="#{converterId}" />
        <a4j:support event="onlistchanged" action="#{bean.sortList}"
            reRender="#{updateId}, #{id}_listShuttle" />

        <rich:column>
            <h:outputText value="#{item.name}" />
        </rich:column>
    </rich:listShuttle>
</a4j:region>

これは私がより多くの場所で使用するコンポーネントなので、いくつかのパラメーターを渡します。

action="#{bean.sortList}" 問題は、再レンダリング フェーズの後にアクションが実行されることです。このアクションを再レンダリング フェーズの前に実行したいと考えています。

アクションの順序は次のとおりです。 - getDisplayedItems - setDisplayedItems - sortList

sortList アクションの後に listShuttle を再レンダリングする方法はありますか?

4

1 に答える 1

0

あなたのsortListにimmediate = trueを追加するとうまくいきますか?

于 2013-09-16T19:19:53.363 に答える