从JBoss AS 7.1.1-Final升级到Wildfly 9.0.1-Final后,当我尝试访问我的servlet时出现此异常。实际上我们正在使用Resteasy进行Web服务,并使用servlet处理GWT网页,使用JBoss AS 7.1.1-Final一切正常,但升级后没有按预期工作,下面你会找到一个片段我的web.xml
文件和jboss-web.xml
。
的web.xml
<servlet>
<servlet-name>admin</servlet-name>
<servlet-class>com.afp.iris.sr.sco.scom.servlet.ScomIHMServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>admin</servlet-name>
<url-pattern>/admin/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Resteasy</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
<init-param>
<param-name>resteasy.scan</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
的JBoss-web.xml中
<jboss-web>
<context-root>/components</context-root>
</jboss-web>
当我尝试以下网址时:http://mymachine:8080/components/admin
我收到以下异常
failed to execute: javax.ws.rs.NotFoundException: Could not find resource for full path: http://mymachine:8080/components/admin
#EDIT#
这就是我实施休息服务的方式
@Stateless(name = "myServices")
@Path("/")
public class myServices {
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_XML)
public Response myFuntion(@Context final HttpServletRequest request) {
return secondFunction(request, null);
}
}
同样适用于resteasy资源,可能是这个问题的根源,欢迎所有建议!
答案 0 :(得分:0)
您的 web.xml 文件缺少WildFly的RESTeasy引导类。
另外,将您的resteasy.scan
财产从servlet
移至[{1}},并将其作为init-param
。
以下是需要进行的更改:
context-param
也许您可以尝试使用Servlet 3.0 Annotations而不是使用servlet映射。
作为调用示例,您可以执行以下操作:
<context-param>
<param-name>resteasy.scan</param-name>
<param-value>true</param-value>
</context-param>
<listener>
<listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>
</listener>
<servlet>
<servlet-name>Resteasy</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>