Перехват 400 генерации ответа, когда Джерси обнаруживает плохой XML? - PullRequest
1 голос
/ 24 января 2012

Я пишу тестовый сервер, который должен эмулировать сторонний сервер RESTful, я использую Джерси для написания тестового сервера.

Все запросы выполняются POST с полезными нагрузками application / xml, поэтому яначалось с:

  @Path("GetUserDetails")
  @POST
  @Consumes(MediaType.APPLICATION_XML)
  public GetUserDetailsResp GetUserDetails(GetUserDetailsReq request) {
    ...
  }

Джерси с радостью возвращает 400, когда XML плохо отформатирован (GetUserDetailsReq является объектом JAXB), а это не то, что мне нужно.Скорее мне нужно вернуть 200 и блок ошибок XML.

Я могу обойти 400, разобрав в методе и используя класс @ Provider / ExceptionMapper, но это неуклюже.Есть ли способ указать Джерси альтернативу декларативному возврату 400?Может быть вариант на @ Provider / ExceptionMapper?

TIA.

1 Ответ

0 голосов
/ 31 августа 2012

Павел Бучек ответил на это в списке рассылки: http://jersey.576304.n2.nabble.com/Intercept-400-response-generation-when-Jersey-detects-bad-xml-tt7221572.html

...