我在下面有这个代码,它在托管/调试模式下运行时有效但是在Tomcat中部署时它不起作用。
History.addValueChangeHandler(new ValueChangeHandler<String>() {
@Override
public void onValueChange(ValueChangeEvent<String> event) {
// call update model, and eventually app will show the appropriate view...
}
});
我的上述代码是在用户在浏览器中输入类似内容时捕获事件:
http://http://127.0.0.1:8888/index.html?gwt.codesvr=127.0.0.1:9997#user123
在托管模式下运行良好,但在Tomcat中部署并通过浏览器访问时:
http://127.0.0.1:8888/index.html#user123
显示空白页面。
编辑:除非先加载gwt app并输入FI,否则
答案 0 :(得分:1)
请阅读:What is need History.fireCurrentHistoryState() in GWT History?
第一次加载http://127.0.0.1:8888/index.html#user123时,您在历史事件发生后注册了历史记录处理程序。如果您重新加载页面,则会触发。
您需要在注册历史记录处理程序后调用History.fireCurrentHistoryState()
以“重新触发”事件。