有没有办法将JAX-RS ExceptionMapper Provider限制为仅传入请求处理?

时间:2013-11-01 01:51:44

标签: java web-services cxf jax-rs

有没有办法限制 CXF javax.ws.rs.ext.Provider只应用于传入的JAX-RS请求?

我想要的是以通用方式处理来自jackson的所有传入JsonMappingExceptions以抛出400响应,但不会因为下游处理而抛出任何JsonMappingException。

我尝试使用@ConstrainedTo(Type.SERVER)注释,但看起来CXF似乎不支持它们。

我想我想做这样的事情:

 @Provider //doesn't seem to be supported by CXF, so I manually add it in the XML configuration
 @ConstrainedTo(Type.SERVER) //doesn't seem to do anything at all...
 public class InvalidRequestExceptionMapper implements ExceptionMapper<JsonMappingException> {

     @Override
     public Response toResponse(JsonMappingException jsonE) {
         return Response.status(400).type(MediaType.APPLICATION_JSON).entity("Bad stuff in JSON from Request.").build();
     }
 }

但似乎实际上并不仅限于传入的请求处理。

0 个答案:

没有答案