一尘不染

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

tomcat

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

我的GWT应用程序servlet在URI /
mygwtapp中,因此我将文件夹重命名为mygwtapp。该应用程序正确加载了servlet无法运行的问题,即/ mygwtapp /
servlet无法运行。

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

谢谢。


阅读 228

收藏
2020-06-16

共1个答案

一尘不染

默认情况下,Tomcat从上下文路径“ / mygwtapp”提供名为“ mygwtapp”的应用程序。(而GWT内置码头则通过上下文路径“
/”为其提供服务。)

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

因此,您有两种选择:

  1. 告诉客户端在“ / mygwtapp / mygwtapp / *”处调用servlet(我认为,在使用@RemoteServiceRelativePath批注时,这已经自动解决了)
  2. 调整Tomcat中Web应用程序的上下文路径,如http://tomcat.apache.org/tomcat-6.0-doc/config/context.html中所述
2020-06-16