我正在努力使用GWT + Java后端创建一个Web应用程序。主机页面为"应用.html"该应用还具有 RPC,并且主机页面在最初加载时会进行 RPC 调用。
然而,这是我从谷歌浏览器的Javascript控制台收到的消息-
POST http://app.sparkcrawler.com/com.arvindikchari.auth.App/AuthenticationService 404(Not Found)
以下是我网站的内容.xml--
<?xml version................................>
<servlet>
<servlet-name>AuthenticationService</servlet-name>
<servlet-class>com.arvindikchari.auth.server.AuthenticationServiceImpl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AuthenticationService</servlet-name>
<url-pattern>/com.arvindikchari.auth.App/AuthenticationService</url-pattern>
</servlet-mapping>
我在这里做错了什么?如何解决此错误?
问题出在您的 servlet 映射上。
基本上,你在web中有两件事.xml(关于servlet):
-
为<servlet>
标记,它定义了 servlet 的别名,以及它的完全限定名称(在您的情况下,AuthenticationService 和 com.arvindikchari.auth.server.AuthenticationServiceImpl)给定别名指定 URL 模式的
<servlet-mapping>
(取自<servlet>
定义)。
它应该像
<servlet-mapping>
<servlet-name>AuthenticationService</servlet-name>
<url-pattern>/authenticationService</url-pattern>
</servlet-mapping>
我认为你的servlet映射url模式看起来是错误的。
通常,在映射任何 servlet 时,<url-pattern>
都是这样的。
<`<url-pattern>/{app name}/{servlet name}</url-pattern>`
这里的应用程序名称将与GWT.xml文件中的注册应用程序名称相同。