参数化REST@Path

参数化REST@Path,path,parameterized,Path,Parameterized,我不知道如何让参数化的@PATH工作 这是我的web.xml <servlet-mapping> <servlet-name>JerseyServlet</servlet-name> <url-pattern>/ND/*</url-pattern> </servlet-mapping> 当我在URL上执行GET或POST时,这两种方法都可以正常工作。 但由于某些原因,URL处的GET方法总是返回404Not

我不知道如何让参数化的@PATH工作

这是我的web.xml

<servlet-mapping>
    <servlet-name>JerseyServlet</servlet-name>
    <url-pattern>/ND/*</url-pattern>
</servlet-mapping>
当我在URL上执行GET或POST时,这两种方法都可以正常工作。 但由于某些原因,URL处的GET方法总是返回404NotFound

我做错了什么


谢谢

您有4级路径:

  • 服务器中web应用程序上下文的路径:可能myapp
  • web.xml中Jax-rsservlet的路径:Here/ND/,但我建议/ws
  • 资源的路径:类上方的第一个@path。您可能应该有
    @Path(“事务”)
  • 然后在每个方法上方添加可选的@Path。假设您没有在任何方法中添加任何@Path
  • 现在你有了 @路径(“交易”) 公共类事务资源 {

    转到Firefox并键入
    http://my_web_app:8080/myapp/ws/transaction
    :您应该读取日期

    如果你加上

        @Path("morepath")
        @GET 
        @Produces(MediaType.TEXT_PLAIN)
        public String itWorksForState()
        {
          return String.format("Get is OK for REST. %s", DateUtil.now());
        }
    
    然后您必须转到
    http://my_web_app:8080/myapp/ws/transaction/morepath

        @GET 
        @Produces(MediaType.TEXT_PLAIN)
        public String itWorksForState()
        {
          return String.format("Get is OK for REST. %s", DateUtil.now());
        }
    }
    
        @Path("morepath")
        @GET 
        @Produces(MediaType.TEXT_PLAIN)
        public String itWorksForState()
        {
          return String.format("Get is OK for REST. %s", DateUtil.now());
        }