将GWT部署到Tomcat(servlet未运行)

将GWT部署到Tomcat(servlet未运行),gwt,tomcat,servlets,Gwt,Tomcat,Servlets,将GWT应用程序部署到Tomcat的正确方法是什么?我制作了一个带有服务器端代码(servlet)的GWT应用程序。它在托管模式下工作,但仅当我将WAR文件夹(编译后)复制到Tomcat webapp目录并正确重命名WAR文件夹时才起作用 我的GWT应用程序servlet位于URI/mygwtap中,因此我重命名了文件夹mygwtap。应用程序正确加载时出现servlet未运行的问题,即/mygwtap/servlet未运行 服务器端代码所需的所有库都位于WEB-INF/lib文件夹中。这可能是

将GWT应用程序部署到Tomcat的正确方法是什么?我制作了一个带有服务器端代码(servlet)的GWT应用程序。它在托管模式下工作,但仅当我将WAR文件夹(编译后)复制到Tomcat webapp目录并正确重命名WAR文件夹时才起作用

我的GWT应用程序servlet位于URI/mygwtap中,因此我重命名了文件夹mygwtap。应用程序正确加载时出现servlet未运行的问题,即/mygwtap/servlet未运行

服务器端代码所需的所有库都位于WEB-INF/lib文件夹中。这可能是什么原因


谢谢。

默认情况下,Tomcat从上下文路径“/mygwtap”提供一个名为“mygwtap”的应用程序。(而GWT内置jetty从上下文路径“/”为其提供服务。)

servlet路径通常为“/mygwtap/*”。这意味着,结合上下文路径,您的servlet现在可以从“/mygwtap/mygwtap/*”访问。(试试看:只需在浏览器中输入完整的URL——Servlet通常会抱怨缺少某些内容,或者不支持GET,但您现在肯定知道它所在的位置。)

所以你有两个选择:

  • 告诉客户端调用位于“/mygwtapp/mygwtapp/*”的servlet(我认为,在使用@RemoteServiceRelativePath注释时,这已经自动完成了)
  • 在Tomcat中调整web应用程序的上下文路径,如中所述

  • 另一个选项是使用GWT.getModuleBaseURL()然后在客户端代码中附加servlet名称。这将使它在jetty或Tomcat上工作,而无需任何特殊配置。

    Tomcat日志怎么说?另外,servlet具体做什么?