GWT片段标识符在托管模式下工作,而不是在编译模式下(Tomcat)

时间:2011-08-22 06:56:16

标签: gwt

我在下面有这个代码,它在托管/调试模式下运行时有效但是在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,否则

1 个答案:

答案 0 :(得分:1)

请阅读:What is need History.fireCurrentHistoryState() in GWT History?

第一次加载http://127.0.0.1:8888/index.html#user123时,您在历史事件发生后注册了历史记录处理程序。如果您重新加载页面,则会触发。

您需要在注册历史记录处理程序后调用History.fireCurrentHistoryState()以“重新触发”事件。