gpt4 book ai didi

java - GWT Tomcat 问题到 RPC 调用

转载 作者:行者123 更新时间:2023-11-30 06:35:43 25 4
gpt4 key购买 nike

当我将我的 war 文件部署到 TOMCAT (tomcat/webapps/ROOT/war) 时,GWT RPC 调用似乎不起作用。

它给了我一个错误:

The requested resource (/war/myproject/call) is not available.

如果我更改目录结构然后直接部署 war 内容(不是 war 目录本身),例如(tomcat/webapps/ROOT/project.html、project.css、project 等... ) 然后就可以了。

谁能给我解释一下这是怎么回事?

我认为可能有问题:

<servlet>
<servlet-name>callServlet</servlet-name>
<servlet-class>com.myproject.server.dao.Call</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>callServlet</servlet-name>
<url-pattern>/myproject/call</url-pattern>
</servlet-mapping>

最佳答案

关键是单个 Tomcat 服务器可以部署多个应用程序,每个应用程序都在其所谓的上下文 中。应用程序部署在 webapps 文件夹中,每个文件夹都映射到一个 context,而 ROOT 文件夹是默认文件夹(无上下文) .

要访问 Tomcat 上的应用程序,您可以在 URL 后指定上下文。例如,如果您在 webapps/Test 文件夹中有一个应用程序(上下文)Test,您可以像这样访问它:

http://localhost:8080/Test

但是 ROOT 文件夹中的应用程序没有上下文,只需转到 localhost:8080 即可访问。这就是你的情况。 Tomcat 直接在 ROOT 文件夹中寻找您的应用程序,但您的应用程序位于 ROOT/war 文件夹中。换句话说,RPC 调用期望 myproject 文件夹在 ROOT 文件夹下,而不是在 ROOT/war 文件夹下。这就是它不起作用的原因。

如果您仍想将 war 文件夹放在 ROOT 文件夹中,则必须将 url-pattern 更改为 /war/myProject/call.

关于java - GWT Tomcat 问题到 RPC 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5650136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com