是否可以配置JAX-RS来调用某些方法来处理与任何其他资源方法不匹配的所有请求(因为例如不匹配的@Path
)。
我天真的做法:
@Path("/")
public class RootResource {
@GET
@Path("foo")
public String foo() {
return "foo";
}
@GET
@Path("{x: .*}")
public String sink(@PathParam("x") String path) {
return "Unknown path: " + path;
}
}
可以打印警告:RESTEASY002142: Multiple resource methods match request "GET /foo". Selecting one. Matching methods: [public java.lang.String restresources.RootResource.sink(java.lang.String), public java.lang.String restresources.RootResource.foo()]
答案 0 :(得分:1)
§3.7.2请求匹配在将请求URI与处理程序匹配方面有很多话要说。
在几个地方它说:
...实现应该报告一个警告,并以依赖于实现的方式选择其中一种方法。
所以看起来你遇到了这种情况。
因此,您需要仔细阅读规范中的规则,了解如何指定所需的跌倒条件。