2012-08-06 2 views
0

사용자가 찾고있는 것을 게시 할 수있는 사이트를 만들려고합니다.새 항목을 입력 할 때 페이지의 일부를 업데이트해야합니다.

사이트의 홈 페이지에서 '라이브'섹션을 갖고 싶습니다. 기본적으로 새로운 항목이 게시 될 때마다 업데이트되므로 페이지를 보는 모든 사용자는 모든 게시물을 실시간으로 볼 수 있습니다.

GlassFish 3 및 JSF 2.0을 사용하여 사이트를 만들고 있습니다. 저는 JSF와 Java EE를 지금 배우고 있습니다. 그래서 그것을 사용하는 솔루션이 제가 지금 알고있는 것만 큼 최고 일 것입니다. 그러나, 나는 당신이 제안 할 수있는 것을 배우려합니다.

답변

1

한 가지 해결책은 폴링을 사용하는 것입니다. Richfaces 구성 요소 라이브러리 및 a4j:poll 구성 요소를 확인하십시오. 특정 시간대에 서버에 ajax 전화가 걸려 최신 게시물을 반환합니다. 그런 다음 페이지의 필요한 부분 만 업데이트됩니다.

Link 개발자 가이드

좀 더 복잡한 해결책은 a4j:push을 사용하는 것입니다.하지만 실제로 필요한 경우 사용하십시오.

1

나는 Petar의 대답에 동의합니다. 폴링을 사용하면 페이지 새로 고침 간격으로 서버에 쿼리를 수행합니다. 너무 primefaces 일부 폴링을 수행 할 수 있습니다 http://www.primefaces.org/showcase-labs/ui/poll.jsf

예를 위의 링크에서 : 당신이 볼 수 있듯이

<h:form id="form"> 
    <h:outputText id="txt_count" value="#{counterBean.count}" /> 

    <p:poll interval="3" 
      listener="#{counterBean.increment}" update="txt_count" /> 
</h:form> 

은 "증가()" "counterBean"의 방법은 각각 3에서 호출됩니다 초, 그리고 매번 txt_count 텍스트가 새 값으로 업데이트됩니다.

관련 문제