0

gwt 编译器如何在 gwtModule 中找到 gwt_servlets?

现在我收到异常 “请求的资源(/finalWar/GWTAPPS/gwtmainmodule/GWTServlet)不可用。”

/finalWar/GWTAPPS/gwtmainmodule/GWTServlet = /warFileName/GWTAPPS/myGwtModuleName/GWTServletName

 <servlet>
     <servlet-name>GWTServlet</servlet-name>
     <servlet-class>.ui.gwtmainmodule.server.GWTServletImpl</servlet-class>
  </servlet>


<servlet-mapping >
   <servlet-name>GWTServlet</servlet-name>
   <url-pattern>/GWTServlet</url-pattern>
</servlet-mapping>

我在 gwt 模块中手动添加了编译的 gwt_servlet 类仍然是同样的问题。:-|

我想知道 GWT 编译器如何找到 gwtServlets (RemoteServiceServlet) ?

对此问题的任何帮助或指导将不胜感激

4

1 回答 1

0

web.xml 中的路径是相对于 webapp 的根目录(您拥有包含 web.xml 的 WEB-INF 子文件夹的文件夹)。

因此,您必须将 web.xml 中的路径调整为您的客户端调用的路径(GWTAPPS/gwtmainmodule/GWTServlet或者gwtmainmodule/GWTServlet,很难从您的描述中分辨出来),或者调整您的客户端代码使用的路径(使用@RemoteServiceRelativePath– 注意此路径与您的模块相关,因此可能gwtmainmodule在您的情况下,而不是加载的 HTML 页面nocache.js,也称为主机页面;请注意,您可以使用它../来向上遍历文件夹层次结构 - 或将您的 RPC 服务转换为ServiceDefTarget并调用setServiceEntryPoint) . 所有这些都是在运行时,并且是关于 URL,而不是文件(请记住,您有客户端和服务器端,它们通过网络在 HTTP 中进行通信)

不过,这与 GWT 编译器甚至开发模式无关。

于 2011-08-30T10:13:56.000 回答