2014-06-23 2 views
1

나는 다음과 같은 코드로 만약 angel에서 PollListener를 사용하려고 해요 :PollListener를 vaadin에서 사용하는 방법은 무엇입니까?

@VaadinUI 
@PreserveOnRefresh 
public class ApplicationUI extends UI { 
    @Override 
    protected void init(VaadinRequest request) { 
     setPollInterval(1000); 
     access(new Runnable() { 
      @Override 
      public void run() { 
       System.out.println("TEST POLL: " + counter++); //is only printed a single time 
      } 
     }); 
    } 
} 

출력 "TEST 투표 0"을 인쇄 한 시간을 내 응용 프로그램을 열 때. 하지만 그게 전부입니다. 나는 무엇을 놓쳤을까요?

답변

7

당신은 아무것도 할 필요하지 마십시오 polling example 특히한다고 : 서버를 폴링이 브라우저를 이렇게함으로써

각 "타임 아웃"MS와 가능성 보류하고있는이 변경 검색

그래서 다음에 폴링이 발생하면 응용 프로그램이 클라이언트 브라우저에서 업데이트됩니다. 이 예제에서 특별한 사용자 상호 작용없이 UI가로드 된 후 5 초 후에 레이블이 표시됩니다. 각 등의 요청에 몇 가지 코드를 실행해야하는 경우

그러나, 당신은 pollingListener

@Override 
protected void init(VaadinRequest request) { 
    setPollInterval(1000); 
    addPollListener(new UIEvents.PollListener() { 
     @Override 
     public void poll(UIEvents.PollEvent event) { 
      log.debug("Polling"); 
     } 
    }); 
} 
+0

은 제가 간격 시간을 모르는 경우 추가 할 수 있습니까? –

+0

@HasebAnsari 그게 무슨 뜻이야?! 설문 조사 사이에 얼마나 오래 있어야 하는지를 지정해야합니다. 어떻게 알 수 있습니까?! – Morfic

+0

은 내가 clickevent 후에 어떤 코드가 실행되고 멈추어야한다는 것을 알고 시간의 관점에서만 안된다는 것을 의미합니다. –