Como posso testar um MessageBodyWriter para uma lista <Alguns>?
Eu tenho um método de recurso JAX-RS.
@GET
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
public List<Some> list() {
final List<Some> list = get();
// list and each elements are ok.
return list;
}
O problema é queapplication/xml
gera um 500 sem nenhum log de servidor específico (tomcat).
application/json
funciona bem.
Verifico JAXB-marshaller para todos os elementos emlist
.
Como posso depurar isso? Como posso testar qualquerMessageBodyWriter
paraList<Some>
?
ATUALIZAR
A causa raiz desse problema (500 sem um log de erros) é uma classe anotada incorretamente em JAXB.
Eu criei umExceptionMapper<Exception>
como @peeskillet sugeriu.
@Provider
public class MyExceptionMapper implements ExceptionMapper<Exception> {
@Override
public Response toResponse(final Exception exception) {
exception.printStackTrace(System.err);
return Response.serverError().build();
}
}
Então eu pude ver qual erro o JAXB fez. Ainda não entendo por que qualquer erro JAXB não é relatado.