java - 子资源在 Jersey REST API 框架中不起作用

标签 java tomcat jersey-2.0

我按照以下文档来实现 Sub 资源,但它无法按预期工作。

https://docs.huihoo.com/jersey/2.13/jaxrs-resources.html#d0e2280

示例代码,

    @Path("/")
    public class OrderInfo {

      @Path("/orders/{id}")
      public OrderDetails getOrderById(@PathParam("id") int orderId) {
          return new OrderDetails(orderId);
      }
    }

    public class OrderDetails {

      private final int id;

      public OrderDetails(int id) {
          this.id = id;
      }

      @GET
      public String getOrderDetails() {
          return "test order details for order id: " + id;
      }
    }

我交叉检查了日志文件,没有发现任何异常。当我点击 URL“https://localhost:8443/orders/10”时,响应为“{}”。我是否错过了这段代码?任何帮助将不胜感激。

最佳答案

像这样更改并尝试再次进行调用,您必须在类级别为路径参数指定一些名称。

 @Path("orders")
    public class OrderInfo {

      @Path("{id}")
      public OrderDetails getOrderById(@PathParam("id") int orderId) {
          return new OrderDetails(orderId);
      }
    }

关于java - 子资源在 Jersey REST API 框架中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59540851/

相关文章:

java - 是什么让 Tomcat5.5 不能成为新 Java Web 应用程序的 "aware"?

java - 使用 Jackson 响应 json Web 服务

java - 为什么 Jersey 中的 XmlRootElementJaxbProvider 使用 SAXSource

java - 从表中的其他下拉列表填充多个下拉列表

java - 如何使用 PC NAME 在 Lubuntu 中永久挂载 Windows 共享文件夹?

java - jLabel中的信息自动连接成一句话

java - 使用 GWT 重复发布帖子

java - 将请求从 spring controller 重新发送到 spring controller

rest - 具有基本身份验证 XMLHttpRequest 的 Tomcat7 REST 服务

java - 带有Jersey 2.1x的Google Appengine在开发服务器中工作正常,但在Appengine服务器中工作不正常