我有一個RichFaces的項目,以及一個看似簡單的事情,開不想要工作:( 退房代碼:重新呈現不適合A4J工作:commandLink標籤
<rich:panel header="Admin home" id="panel">
<h:form>
<rich:dataTable id="userlisttable" value="#{adminBean.userList}"
var="user" style="width:100%">
<rich:column id="banDate" headerClass="dataTableHeader"
label="Ban date" sortable="true" sortBy="#{user.banDate}"
sortIconAscending="dataTableAscIcon"
sortIconDescending="dataTableDescIcon">
<f:facet name="header">
<h:outputText value="Ban Date" />
</f:facet>
<h:outputText value="#{user.banDate}" />
</rich:column>
<rich:column id="actions" headerClass="dataTableHeader"
label="Actions" sortable="false">
<f:facet name="header">
<h:outputText value="Actions" />
</f:facet>
<h:panelGrid columns="4">
<h:outputText value="Ban user for" />
<a4j:commandLink action="#{adminBean.banUser}" value="One week"
style="font-size:16px" reRender="banDate" immediate="true">
<f:setPropertyActionListener target="#{adminBean.user}"
value="#{user}" />
</a4j:commandLink>
</h:panelGrid>
</rich:column>
</rich:dataTable>
</h:form>
</rich:panel>
它的行爲非常奇怪: (actionBean.banUser)被執行,那麼userList的getter也被執行,但是頁面上沒有任何反應,如果我手動刷新它(F5),新的修改後的數據就會出現。 ,本
你禁止用戶後更新adminBean.userList? – soulcheck 2012-01-11 13:22:49
是的。我在getter中有一個數據庫查詢,正如我所提到的,getter被調用。我也試圖把這個查詢放在這個動作中,所以如果更新(禁止)成功,那麼它就會被解僱,並且仍然沒有任何東西:( – 2012-01-11 13:28:54
嘗試重新渲染整個表而不是一列 – soulcheck 2012-01-11 13:31:26