Rest Easy Hello世界示例显示404找不到错误

时间:2019-05-30 13:05:42

标签: rest maven wildfly resteasy

由于我没有找到任何适用于RestEasy + WildFly的好教程,因此,我正在关注此(https://robferguson.org/blog/2016/12/02/getting-started-with-resteasy/)教程,并使用Resteasy 3.7.0创建了一个简单的JAX-RS项目的Hello World示例。 Wildfly 13 + Java 8 + Maven。本教程实际上是使用Jetty Http服务器。

这是Resource类:

@Path("/hello")
@Produces(MediaType.TEXT_PLAIN)
public class MessageResource {

    @GET
    @Path("/{param}")
    public Response printMessage(@PathParam("param") String msg) {
        String result = "Hello " + msg + "!";
        return Response.status(200).entity(result).build();
    }
}

还有一个扩展javax.ws.rs.core.Application的类-(所有Rest资源将由该类自动注册)

@ApplicationPath("")
public class HelloWorldApplication extends Application {

    public HelloWorldApplication() {}

    @Override
    public Set<Object> getSingletons() {
        HashSet<Object> set = new HashSet<Object>();
        set.add(new MessageResource());
        return set;
    }
}

此外,我在WEB-INF下添加了jboss-deployment-structure.xml(不是本教程的一部分),以排除以下模块:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
    <deployment>
        <exclude-subsystems>
            <subsystem name="resteasy" />
        </exclude-subsystems>
        <exclusions>
            <module name="javaee.api" />
            <module name="javax.ws.rs.api"/>
            <module name="org.jboss.resteasy.resteasy-jaxrs" />
        </exclusions>
        <local-last value="true" />
    </deployment>
</jboss-deployment-structure>

我想这不包括与Wildfly捆绑在一起的resteasy模块(如果我错了,请纠正我),因为我在pom.xml中使用了RestEasy的最新版本:

<properties>
    <resteasy.version>3.7.0.Final</resteasy.version>
</properties>

在maven配置中,我删除了jetty插件,pom.xml中的其余部分与此处的教程示例相同,除了RestEasy版本。 https://github.com/Robinyo/resteasy/blob/master/examples/helloworld/pom.xml

但是当我尝试使用URL http://localhost:8080/hello/World运行示例时,出现404 - Not Found错误。

maven配置或wildfly配置中是否缺少任何部分?

0 个答案:

没有答案