Jersey / Jackson Problema de exceção com o ExceptionMapper

Estou usando Jersey para fornecer um serviço REST em java para o mundo exterior. Eu ofereço algumas funções que usam JSON e uso a estrutura de Jackson em combinação com jersey para convertê-las em POJOs.

Tenho o problema de que, se o formato jackson errado for enviado ao servidor, a resposta (conteúdo da resposta http) será uma descrição específica da exceção de jackson. Se eu tiver um POJO com o atributo "sobrenome" e enviar "sursname" na string json para o servidor, recebo:

Unrecognized field "sursname" (Class XY), not marked as ignorable at [Source: sun.net.httpserver.FixedLengthInputStream@903025; line: 1, column: 49] (through reference chain: XY["sursname"])

That ok, mas eu gostaria de ter meu próprio conteúdo de resposta, por exemplo, meu próprio código de erro. Eu já escrevi umcustom ExceptionMapper que deve mapear todos os itens jogávei

@Provider
public class WebserviceExceptionMapper implements ExceptionMapper<Throwable> {

@Override
public Response toResponse(Exception e) {
    e.printStackTrace();
    return Response.status(400).entity("{\"errorcode\":\"CRITICAL_ERROR\"}").type(MediaType.APPLICATION_JSON).build();
    }
}

Parece que a exceção jackson é lançada antes que meu método de serviço da web seja chamado, então não tenho chance de mapeá-l

Alguém tem alguma ideia? Muito obrigado e desculpe pelo meu inglês;)

questionAnswers(5)

yourAnswerToTheQuestion