【问题标题】:Debug GWT application on server side在服务器端调试 GWT 应用程序
【发布时间】:2014-05-07 20:21:53
【问题描述】:

我想知道如何在服务器端调试 GWT 应用程序。我正在使用 eclipse 和 GWT 默认服务器。我通过右键单击运行我的应用程序并作为 Web 应用程序运行。我尝试使用 System.out.println 但它不起作用。

【问题讨论】:

  • 您想调试 GWT 服务器代码吗?这与其他所有 JavaApp 一样。
  • 是的。所以你的意思是 System.out.println 应该工作?实际上,我很难理解活动、地点和 MVP,最终得到了它。现在,我想看看我的请求是否发送到服务器,所以我在服务器上放了一个跟踪。当我点击提交时,我只看到这个:[WARN] 404 - POST /smartebrm/client (127.0.0.1) 1402 bytes Request headers Host: 127.0.0.1:8888 Connection: keep-alive Content-Length: 232 X- GWT-Module-Base:127.0.0.1:8888/smartebrm X-GWT-Permutation:HostedMode
  • @gagan 这告诉你你在web.xml 中的映射对于RPC servlet 是错误的(或者@RemoteServiceRelativePath 是错误的,但无论如何都存在不匹配)
  • 谢谢@Thomas,我在 servlet 路径中遇到了问题。我正在将我的项目从 jsps 迁移到 GWT。我的 jsp 项目目前正在 Tomcat 上工作,我在服务器启动时从数据库中加载一些记录,并将它们保存在缓存中。我也可以对 Google 默认服务器执行相同操作吗?

标签: gwt


【解决方案1】:

如果您使用 DevMode 的嵌入式服务器,那么它就像在客户端一样工作:调试为... ⇒ Web 应用程序 然后设置您的断点(无论是客户端还是服务器端,它们在同一个 JVM 中运行)。

当您更改服务器端代码时,Eclipse 会即时重新编译它(除非您禁用它,在这种情况下您必须显式构建您的项目)到您的 WEB-INF/classes(这就是GPE 应该配置),然后点击 Eclipse 中 DevMode 视图上的“重新加载”按钮(两个黄色箭头)。从客户端到服务器的下一次调用将使用新的服务器代码(无需在浏览器中重新加载应用程序)。
如果 Eclipse 提议在更改时热交换代码,您可以说“不”。

【讨论】:

    【解决方案2】:

    按照以下步骤以debug 模式运行。

    右键项目->Debug As->Web应用程序

    或者您也可以按照以下步骤操作。

    点击Debug As..,如Eclipse工具栏所示->调试配置->调试

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-12
      • 1970-01-01
      • 1970-01-01
      • 2016-10-03
      • 2013-02-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多