【问题标题】:REST with JAX-RS : extending Application class with @ApplicationPath on Tomcatv7.0 gives 404 error带有 JAX-RS 的 REST:在 Tomcatv7.0 上使用 @ApplicationPath 扩展应用程序类会产生 404 错误
【发布时间】:2018-12-02 11:36:26
【问题描述】:

我正在学习使用 JAX-RS 的 REST Web 服务。

下面是我写的两个类:

package com.vitp.app;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

@ApplicationPath("/api")
public class MyApp extends Application {

}

package com.vitp.rest;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/test")
public class Test {

    @GET
    @Produces(MediaType.TEXT_PLAIN)
    @Path("/t")
    public String doTest()
    {
        return "test success";
    }
}

我正在使用 Tomcat v7.0 部署这个 WebApp。

当我尝试访问 URL:http://localhost:8080/RestAdvance/api/test/t 时,我收到 404 错误。 无法弄清楚这里出了什么问题。

【问题讨论】:

  • 您使用的是什么 jars(或依赖项)?使用此信息编辑您的帖子。

标签: rest jax-rs


【解决方案1】:

您需要扩展ResourceConfig 并注册您的Test 类:

@ApplicationPath("/api")
public class MyApp extends ResourceConfig {
public MyApp () {       
        register(Test.class);       
    }
}

【讨论】:

    猜你喜欢
    • 2020-09-08
    • 2014-12-29
    • 2016-12-06
    • 1970-01-01
    • 1970-01-01
    • 2015-05-24
    • 1970-01-01
    • 2016-12-22
    • 1970-01-01
    相关资源
    最近更新 更多