2012-04-23 8 views
0

JSF a4jコンポーネントに取り組んでいます。JSF a4j:UIのRerenderが機能しない

<h:selectOneMenu id="sampleSelect" value="#{myBackingBean.id}" 
    immediate="true"> 
    <f:selectItems value="#{myBackingBean.generateSampleList}"/> 
    <h:outputLabel value="Sample List : " for="sampleSelect"></h:outputLabel> 
    <a4j:support ajaxSingle="true" 
       event="onchange" 
       reRender="dataTable1, dataTable2, dataTable3" 
       oncomplete="setColorbox();" 
       action = "#{myBackingBean.setSampleListForDatatables}"> 
    </a4j:support> 
    </h:selectOneMenu> 

そして

<h:panelGroup id="dataTable1"> 
    <h:dataTable value="#{myBackingBean.anotherBean.sampleList}" 
       var="sampleList" 
       styleClass="table"> 
     <h:column> 
      .... 
     </h:column> 
    </h:dataTable> 
    </h:panelGroup> 

としての私ののDataTable私はこのAJAX呼び出しに変更され、AJAX呼び出しを完全に再レンダリングする必要があり、同じような複数のDataTableを持っています。

サーバー側のデータは完全に変更されていますが、UIでは変更されません。私が何をしたかの目的をチェックするための

は、....使用されている私のAJAX呼び出し後に変更されていないのDataTableで

<h:column> 
    <%=new java.util.Date()%> 
</h:column> 

誰かが私に何かを提案できますか?

私は、私がすでに行った即時= "真"を使用しなければならないことを知っています。しかし、運がない。

答えて

1

私はh:panelGroupを削除し、h:datatableにそのIDを入れて、それが動作します私の答え

<h:dataTable value="#{myBackingBean.anotherBean.sampleList}" 
      var="sampleList" 
      styleClass="table" 
      id="dataTable1"> 
    <h:column> 
     .... 
    </h:column> 
</h:dataTable> 

を得ました。 :)

関連する問題