在远程环境中调试GWT应用程序

3

我已经将我的GWT应用程序部署到目标环境(即编译并复制war目录内容到目标设备的/var/www),但其中一些部分不起作用。我了解到,我可以通过打开部署的GWT应用程序URL并添加gwt.codesvr URL参数来调试本地GWT应用程序实例,就像它在目标环境中运行一样,例如:

http://deployment_host/gwtapp.html?gwt.codesvr=localhost:9997

我明白了

Plugin failed to connect to Development Mode server at localhost:9997
Follow the underlying troubleshooting instructions

我的Chrome浏览器和Eclipse运行在同一台机器上,所以上面的localhost应该没问题。为了确保,我在Eclipse的Run/Debug配置中添加了-bindAddress 0.0.0.0,并尝试使用我的外部IP地址/主机名,但没有改变,唯一改变的是错误信息被相应地更新。我做错了什么吗?

如果我在上面用localhost代替deployment_host ,一切都很正常,但对我来说没有任何用处去调试本地代码。(当在本地运行时,本地Apache会进行一些代理和反向代理,因此我不需要8888端口,但这与问题无关)

相关问题Debugging GWT applications outside of dev mode?Debug GWT application in a remote browser ,但并没有帮助。


1
你的意思是通过部署 GWT 编译并在 Web 服务器上运行? - milan
是的,我刚刚更新了问题以澄清这一点。 - Irfy
你是否收到了“Web和服务器代码配置未被识别...”的错误提示? - milan
1
尝试将localhost替换为127.0.0.1,使用http://deployment_host/gwtapp.html?gwt.codesvr=127.0.0.1:9997,无论-bindAddress 0.0.0.0如何(不需要它即可工作) - milan
1
也许是广告拦截器,防火墙,浏览器缓存等问题。用哪个浏览器?如果是Chrome,则可能需要将Web服务器添加到开发插件的允许列表中。尝试使用Firefox。 - milan
显示剩余2条评论
2个回答

6
如果您正在使用Chrome浏览器,请在地址栏的右侧查找灰色GWT图标。在其他任何浏览器中,您都会看到弹出消息以确认您是否要进行调试,但在Chrome中似乎不可能进行此操作。
单击该图标,它将要求您将此站点列入白名单,允许在您的计算机上本地运行Java。在您将其列入白名单后,它应该能够正确运行。

现在GWT不再抱怨了,但是超时后,Chrome会响应一个“糟糕!Google Chrome无法连接到deployment_host”,然而,如果我删除?gwt.codesvr URL参数,它就可以正常打开。有什么想法吗? - Irfy
这是一个缓存问题,正如Milan所建议的那样。你的解决方案现在可以工作了,谢谢。 - Irfy

0

与上面的答案类似,我刚刚尝试重启扩展程序并获得了一些成功(但是重启浏览器没有用)

在以下位置启用和禁用它即可:

chrome://chrome/extensions/

祝你好运!在我看来,这是GWT唯一的问题...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接