2013-07-18 3 views
0

Richfaces 3.3에서 Richfaces 4.2로 업그레이드 중입니다. a4j:queue 구성 요소에 oncomplete 속성을 사용하여 Ajax 요청 후 JavaScript 컨트롤러를 다시 매핑했습니다. 업그레이드 후 oncomplete 특성이 더 이상 작동하지 않습니다. Richfaces 4.x에서는 지원되지 않는 것 같습니다.Richfaces a4j : queue oncomplete가 Richfaces 4.2.x 또는 4.3.x에서 작동하지 않음

코드는 다음과 같은 :

<a4j:queue requestDelay="500" oncomplete="alert('1')" /> 
<h:form> 
<h:commandLink value="Common link"> 
<a4j:ajax /> 
</h:commandLink> 
</h:form> 

이 문제와 관련된 Richfaces의 이슈 트래커에서 열려 문제가 있습니다 :

내 질문에 a4j:queue 구성 요소에서 oncomplete 속성을 제거 할 수있는 방법이 있습니까? 모든 Ajax 요청이 완료된 후에 JavaScript 컨트롤러를 다시 바인딩하고 싶습니다. 우리가이 문제를 겪는 유일한 사람들은 아닌 것 같습니다. 다른 사람들이 변화를 어떻게 해결했는지 궁금합니다.

답변

0

여기에 우리가 마침내 정한 것이 있습니다.

우리는 이미 AJAX 요청이 처리되는 동안 표시되는 작은 회 전자를 표시하기 위해 사용했던 a4j:status 요소를 사용했습니다. 컨트롤러를 a4j:status 요소의 onstop 요소로 다시 매핑합니다.

<a4j:status onstop="alert('1');"> 
     <f:facet name="start"> 
      <div id="throbber" class="throbber-visible">Loading...</div> 
     </f:facet> 
    </a4j:status>