Я создал класс, реализующий implements ExceptionMapper<WebApplicationException>
, и зарегистрировал его environment.addProvider(new WebApplicationExceptionMapper());
. Мой пользовательский картограф работает, но только для некоторых исключений, расширенных с WebApplicationException
. Например, это не работает для ConflictException
, а также не работает для моих пользовательских исключений со следующим конструктором:
public ConflictException(URI location, Object entity) {
super(Response.status(Response.Status.CONFLICT).location(location).entity(entity).build());
}
Это сработает, если я удалю super(Response.status....
. Это очень странно, и я не могу этого объяснить. Я не уверен, это поведение Jersey
или Dropwizard
.
Как правильно настроить картограф для всех WebApplicationException
и подклассов? Можете ли вы объяснить проблемы, которые у меня есть?