繁体   English   中英

RestEasy JAX-RS ApplicationPath 返回 404

[英]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 有何不同?

404 错误

休息应用

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM