使用 JAX-RS,是否可以将多个类分配给单个路径?我正在尝试做这样的事情:
@Path("/foo")
public class GetHandler {
@GET
public Response handleGet() { ...
}
@Path("/foo")
public class PostHandler {
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response handlePost() { ...
}
这显然是不允许的,因为我得到:
com.sun.jersey.api.container.ContainerException: A root resource, class PostHandler, has a non-unique URI template /foo
我总是可以创建一个类来处理请求,然后委托(delegate)给辅助类。我希望有一个标准的方法来做到这一点。
最佳答案
JAX-RS 规范并不禁止这样的映射。例如,Resteasy JAX-RS 实现允许它。该功能应特定于 Jersey 。
关于:
I can always create one class to handle requests and then delegate to helper classes. I was hoping there was a standard way of doing so.
通常你有与路径同名的资源类:
@Path("/foo")
public class FooResource {
@GET
@Path("/{someFooId}")
public Response handleGet() {
...
}
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response handlePost() {
...
}
}
关于java - 具有相同路径的 JAX-RS 多个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12097292/