java - 服务于多个路径的 Jersey 资源类

标签 java jersey jax-rs jersey-2.0

我编写了一个资源类,我想用它支持多个资源路径。

@Path("/path/to/jobs")
public class JobController {

    @GET
    @Produces(MediaType.APPLICATION_JSON)
    public List<JobDto> getJobs() {
        ...
    }

    @GET
    @Produces(MediaType.APPLICATION_JSON)
    @Path("{job_id}")
    public JobDto getJob() {
        ...
    }
}

问题是它接受路径localhost:80/path/to/jobs,但不接受localhost:80/path/to/jobs/job123。我尝试使用 /path/to 注释该类,并使用 jobsjobs/{job_id} 注释方法。它仍然不起作用。有什么指点吗?

我找到了this问题和this这似乎表明我应该能够做到这一点。

最佳答案

现在它接受

localhost:80/path/to/jobsjob123

。如果你想得到响应

localhost:80/path/to/jobs/job123

用注释 getJob() 方法

@Path("/{job_id}")

你刚刚错过了“/”

关于java - 服务于多个路径的 Jersey 资源类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31553590/

相关文章:

java - 使用 JDK 1.8 时泛型引用不明确

java - 使用 Active Directory 在 Java 平台中进行单点登录 (SSO)

spring-boot - Jersey Rx 客户端 jersey-client-async-executor 关闭

java - 无法嵌套自定义 Jersey 提供程序

java - 如何为抽象类创建 Junit 测试?

java - Ms Access SQL异常参数太少

java - 获取错误 : Error reading entity from input stream

java - 如何使用 Java SE 6 的内置 Web 服务器运行 Jersey?

java - 我可以重载具有不同参数的 REST url 资源吗?

java - 演示 jax-rs 资源未绑定(bind)到 jboss 上预期的位置