如何使用GWT dev / hosted模式调试问题?

时间:2012-11-07 14:14:05

标签: java debugging gwt maven

我正在尝试在基于Maven的Java webapp中设置GWT开发/托管模式。我通过Maven Tomcat7插件(mvn tomcat7:run-war-only)启动我的webapp,它运行正常。此外,通过mvn gwt:run启动GWT工作并显示没有错误。

但是,如果我使用gwt.codesvr = 127.0.0.1:9997参数访问我的webapp,我只会在浏览器中看到一个空白页面。有趣的是,页面源包含我的JSP的内容,但它只定义了一些被GWT替换的div。

如何调试这种情况?我还没有找到GWT dev模式的任何选项来生成某种日志记录输出。例如,知道GWT代码服务器是否曾接收过呼叫将会很有趣。目前,我遗漏了任何线索,从何处开始研究为什么GWT开发模式不起作用。

1 个答案:

答案 0 :(得分:2)

我最初的问题是,如何调试Maven GWT插件,以防它没有做它应该做的事情。以下是一些在此过程中帮助我的提示:

  • 通过配置参数
  • 将日志级别增加到ALL
  • 在浏览器中检查(例如通过Firebug)查询托管模式的文件,例如devmode.js和hosted.html。
  • 插入Window.alert(“...”);进入onModuleLoad()函数以查看GWT代码是否全部执行
  • 确保您的应用服务器正在执行爆炸战争(例如,在启动应用服务器之前删除打包的WAR文件)
  • 启动app服务器后,不要在没有GWT codeserver参数的情况下调用页面,因为这已经在webapp爆炸文件夹中生成了一些GWT文件,这可能与GWT托管模式创建的文件冲突;注意创建哪些文件并手动删除它们
  • GWT开发模式似乎不完全确定,因为我在浏览器中强制重新加载页面后能够让它运行
  • 从一个工作示例开始,例如就像我在这里分享的那样:https://github.com/steinsag/gwt-maven-example