如何捕获这些无效 URL,以便返回正确的错误资源?
谢谢。
基本上,我想覆盖“找不到资源页面”。相反,我想返回一个描述错误的 XML。
这在一定程度上取决于您使用的 JAX-RS 实现。
如果您使用的是RESTEasy,您可以创建一个ExceptionMapper
可以捕获的org.jboss.resteasy.spi.NotFoundException
。这使您能够构建和返回自定义javax.ws.rs.core.Response
public class MyExceptionMapper implements ExceptionMapper<NotFoundException> {
@Override
public Response toResponse(NotFoundException exception) {
return Response.status(exception.getErrorCode()).build();
}
}
我有点不确定如何用Jersey做到这一点,但也许你可以创建一个ExceptionMapper
可以捕获的com.sun.jersey.api.NotFoundException
。