3

有什么方法可以限制CXF javax.ws.rs.ext.Provider 仅适用于传入的 JAX-RS 请求?

我想要的是以通用方式处理来自杰克逊的所有传入 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();
     }
 }

但这似乎并没有真正将它限制在传入的请求处理中。

4

0 回答 0