私はRichFacesのプロジェクトを持っている、と一見単純な事は仕事をしたいdoes't は、コードをチェックアウト:再レンダリングが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のゲッターも実行されますが、ページ上で何も起こりません。手動で更新すると(F5)、新しい変更データが表示されます。
アイデア? ありがとう、ベン
ですユーザを禁止した後にadminBean.userListを更新しますか? – soulcheck
はい。私はゲッターにDBクエリを持っています。私が言及したように、ゲッターが呼び出されます。私はまた、アクションにクエリを入れようとしましたので、更新(禁止)が成功し、まだ何も起こっていない場合に発生します:( –
もう一つの列の代わりにテーブル全体を再描画しようとしました – soulcheck