两个具有相似 @Path 注释的资源类上的 Jersey 404

Eri*_*ier 2 java rest jersey dropwizard jersey-2.0

我有一个 RESTful Web 服务,使用 Drop Wizard 0.8.5 和 Jersey 2.21。我有一个资源类,其注释为:

@Path("/mysite/somepath")

这个类包含各种方法,例如@GETs、@PUTS等,都工作得很好。

现在,我有另一个用@Path("/mysite"). 在此资源类中,我需要添加一些用路径注释的方法,如下所示:

@Path("/somepath/dothis")
@Path("/somepath/dothat")
Run Code Online (Sandbox Code Playgroud)

资源类都注册得很好。然而,当我调用第二个类时,我得到了 404,因为泽西岛似乎正在我的第一个类中寻找这些方法。除了更改我的 @Path 注释以避免这种命名冲突之外,还有其他方法可以解决此问题吗?

OPK*_*OPK 5

@PathJersey 假定每个类别都有与其相关的独特表达。如果您想对@Path两个不同的资源使用同一个变量,您可以使用两个不同的路径名,也可以将两个类合并为一个类。