gwt编译器如何将gwt_servlets发现到gwtModule?
现在我收到异常“请求的资源(/ 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)?
任何有关此事的帮助或指导都将不胜感激
答案 0 :(得分: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编译器严格无关,甚至与开发模式无关。