yeg*_*256 6 java jax-rs jersey
我有许多类作为JAX-RS请求"处理程序"公开,使用javax.ws.rs.Path注释.我想在每个请求之前和每个请求之后添加某些操作.此外,我需要创建一个全局应用程序范围的异常处理程序,它将捕获这些处理程序和协议抛出的所有内容.
是否可以使用标准JAX-RS实现此目的,而无需创建继承自com.sun.jersey.spi.container.servlet.ServletContainer(我使用Jersey)的自定义类.
您还可以使用异常映射器。该机制捕获服务抛出的异常并将其转换为适当的响应:
@Provider
public class PersistenceMapper implements ExceptionMapper<PersistenceException> {
@Override
public Response toResponse(PersistenceException arg0) {
if(arg0.getCause() instanceof InvalidDataException) {
return Response.status(Response.Status.BAD_REQUEST).build();
} else {
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
欲了解更多信息,请参阅:
| 归档时间: |
|
| 查看次数: |
2933 次 |
| 最近记录: |