0

当前状态: 1. 在我的 web.xml 中:

  <servlet-mapping>
   <servlet-name>javax.ws.rs.core.Application</servlet-name>
   <url-pattern>/rest/*</url-pattern>
  </servlet-mapping>

2.我有两个服务资源,@Path 一样

@Path("path")
public class Resource1 {
  //methods annotated with @Path
}

@Path("path")
public class SubResource extends Resource1 {
  //same methods annotated with @Path (are inherited, and not overridden)
}

问题。有没有办法将所有请求重定向到 SubResource 和 Resource1 的“路径”?在目前的情况下,似乎应用服务器(在我的例子中是 JBoss)自己决定取哪个资源,而且并不总是一样的。

谢谢你。

4

1 回答 1

0

我选择的解决方案是使用不同的@Path。SubResource 现在有了更强大的路径,因为它有更多的文字字符:

@Path("path")
public class Resource1 {
  //methods annotated with @Path
}

@Path("/path")//NOTE that the leading slash makes the difference
public class SubResource extends Resource1 {
  //same methods annotated with @Path (are inherited, not overridden)
}

有关 JAX-RS 中的“选择算法”的更多信息,请点击此处

于 2012-08-22T14:47:21.773 回答