Archive

文章標籤 ‘PhaseListener’

Eclipse RAP execute javascript

2011年7月21日 Austin 尚無評論

方法一把輸出字串當javascript執行,方法二只是把方法一包到PhaseListener,為什麼要這樣包還不太清楚,所以先用方法一

try {
	RWT.getResponse().getWriter().println("alert('123');");
} catch (IOException ex) {
	ex.printStackTrace();
}
RWT.getLifeCycle().addPhaseListener(new PhaseListener() {
	private static final long serialVersionUID = 1995219943700635190L;

	@Override
	public PhaseId getPhaseId() {
		return PhaseId.RENDER;
	}

	@Override
	public void beforePhase(PhaseEvent event) {
		try {
			RWT.getResponse().getWriter().println("alert('1');");
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	@Override
	public void afterPhase(PhaseEvent event) {
		try {
			RWT.getResponse().getWriter().println("alert('2');");
		} catch (IOException e) {
			e.printStackTrace();
		}
		RWT.getLifeCycle().removePhaseListener(this);
	}
});