우리는 서로 피어 응용 프로그램 인 웹 모듈 그룹을 가지고 있습니다. 우리는 jQuery를 사용하여 그것들을 매쉬합니다. 이러한 서로 다른 모듈은 모두 JSF를 사용합니다. 다른 모듈은 다른 Java EE 응용 프로그램 서버에 배포 될 수 있습니다.JSF/a4j 매쉬업 - 뷰 상태 ID 만료
계정을 여는 JSF 페이지를 상상해보십시오. 이 페이지는 고객 검색 기능을 사용하여 계정이 열리는 고객을 조회 할 수 있습니다. 계정 열기 양식이있는 JSF 페이지는 하나의 웹 모듈에서 제공되며 클라이언트 검색 페이지는 다른 웹 모듈에서 제공됩니다.
...jsf page loaded from http://openaccount.com/openForm.xhtml
... code to load a search from from elsewhere...
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#search_gadget').load('http://search.com/searchForm.xhtml');
});
</script>
<search_gadget/>
<br/> .. the rest of the open account form...
... searchForm과 openForm은 모두 JSF/a4j 페이지입니다.
이제는 searchForm 'gadget'이 a4j 호출로 검색을 수행하고 새로운 뷰 상태 ID가 반환 될 때 openForm.xhtml의 뷰 상태 ID도 업데이트됩니다. openForm.xhtml을 사용하여 서버에 양식을 게시하면 뷰 상태 아이디가 동기화되지 않습니다 (서로 다른 서버 측보기 상태를 가진 다른 웹 모듈에 대한 a4j 호출에 의해 마지막으로 업데이트 된 이후).
위에서 설명한 방식으로 적절한보기 상태 ID를 분리 할 수있는 방법이 있습니까? 우리는 다른 웹 모듈에서 jsf 뷰 상태를 mashed-in 구성 요소로 분리 할 수 있기를 원합니까?