2012-04-23 85 views
3

我有一個Richfaces listShuttle組件,我需要將源值(左側)排序。爲此,在組件的值發生變化後,我有一個支持bean的方法來排序元素,並且我想重新渲染listShuttle。richfaces reRender在動作偵聽器完成之前執行

的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重新呈現?

+0

你是怎麼解決這個問題的?Alina? – Lisa 2014-04-29 04:44:58

回答

0

會添加immediate = true到你的sortList做詭計嗎?

相關問題