将 GWT 应用程序部署到 Tomcat 的正确方法是什么?我制作了一个带有服务器端代码(servlet)的 GWT 应用程序。它在托管模式下工作,但仅当我将 WAR 文件夹(编译后)复制到 Tomcat webapp 目录并正确重命名 war 文件夹时。
我的 GWT 应用程序 servlet 位于 URI/mygwtapp 中,因此我将文件夹重命名为 mygwtapp。应用程序正确加载,但存在 servlet 未运行的问题,即/mygwtapp/servlet 未运行。
服务器端代码所需的所有库都在 WEB-INF/lib 文件夹中。这可能是什么原因?
谢谢。
最佳答案
默认情况下,Tomcat 提供上下文路径“/mygwtapp”中名为“mygwtapp”的应用程序。 (而 GWT 内置码头从上下文路径“/”为它提供服务。)
您的 servlet 路径通常是“/mygwtapp/*”。这意味着,结合上下文路径,您的 servlet 现在可以从“/mygwtapp/mygwtapp/*”访问。 (试一试:只需在您的浏览器中输入完整的 URL - Servlet 通常会提示缺少某些内容,或者它不支持 GET,但您现在肯定知道它位于何处。)子>
所以你有两个选择:
- 告诉客户端调用“/mygwtapp/mygwtapp/*”处的 servlet(我认为,使用 @RemoteServiceRelativePath 注释时已经自动处理了这一点)
- 调整 Tomcat 中 Web 应用程序的上下文路径,如 http://tomcat.apache.org/tomcat-6.0-doc/config/context.html 中所述。
关于gwt - 将 GWT 部署到 Tomcat(servlet 未运行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6538731/