[英]RestEasy JAX-RS ApplicationPath returns 404
我正在从Jboss 6.4/Java8 -> JBoss 7.2/Java11
转换应用程序,我遇到了错误,我的端点注释似乎被应用程序忽略并返回错误代码404.
您可以在日志中看到web 上下文已注册,其中web.xml
基于安全约束对路径进行身份验证,但请求仍返回404.
我已经更新了 EE 和 REST 库,但无济于事。
该应用程序有 2 个@ApplicationPath
注释。 JAXRS
注释与 EAP6 到 EAP7 有何不同?
休息应用
package com.web;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("/rest")
public class RestApplication extends Application {
}
应用资源
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
@Path("/applications")
public class AppResource{
private static final Logger logger = LoggerFactory.getLogger(AppResource.class);
@Context
private HttpServletRequest httpRequest;
@GET
@Path("/")
@Produces(MediaType.APPLICATION_JSON)
public Response getApplications() {
...
}
...
}
jboss-部署结构
<?xml version="1.0"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>
<dependencies>
<module name="org.jboss.resteasy.resteasy-jaxrs"/>
<module name="com.fasterxml.jackson.core.jackson-core"/>
<module name="com.fasterxml.jackson.core.jackson-databind"/>
<module name="com.fasterxml.jackson.core.jackson-annotations"/>
</dependencies>
</deployment>
<sub-deployment name="WebApp.war">
<dependencies>
<module name="javax.api"/>
<module name="javaee.api"/>
<module name="org.jboss.msc"/>
<module name="org.jboss.as.server"/>
<module name="org.jboss.resteasy.resteasy-jaxrs"/>
<module name="com.fasterxml.jackson.core.jackson-core"/>
<module name="com.fasterxml.jackson.core.jackson-databind"/>
<module name="com.fasterxml.jackson.core.jackson-annotations"/>
</dependencies>
</sub-deployment>
</jboss-deployment-structure>
我的独立设备中缺少 Jaxrs 子系统,因此我需要手动添加它。
可控硅
#JAXRS
if (outcome != success) of /subsystem=jaxrs:read-resource()
/subsystem=jaxrs:add()
reload
end-if
独立的
<subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.