我希望我的ExceptionMapper捕获所有异常并记录它们......我现在正在使用Jersey 2.0。
我有一个像这样的异常映射器:
@Provider
public class RestExceptionMapper implements ExceptionMapper<Exception> {
@Override
public Response toResponse(Exception e) {
log(e);
if (e instanceof WebApplicationException) {
return ((WebApplicationException) e).getResponse();
} else {
return buildResponse(e);
}
仅针对非WebApplication应用程序异常调用此异常映射器。
如何使一个全局异常映射器捕获所有异常,以便我可以记录它们。还有其他方法可以解决这个问题吗?
由于
答案 0 :(得分:1)
从处理此问题的Jersey的源代码来看,无法使用ExceptionMapper
来执行此操作。 WebApplicationExceptions
从来没有映射过特殊待遇。
记录所有异常的一种方法是将记录器org.glassfish.jersey.server.ServerRuntime
设置为FINER
。