Обработка ошибок десериализации Jackson

Моя проблема довольно проста: у меня есть следующий простой класс:

public class Foo {
   private int id = -1;
   public void setId(int _id){ this.id = _id; }
   public int getId(){ return this.id; }
}

И я пытаюсь обработать следующий JSON:

{
  "id": "blah"
}

Очевидно, что здесь есть проблема ("blah" не может быть разобран до int)

Раньше Jackson выбрасывал что-то вроде org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.lang.Integer from String value 'blah': not a valid Integer value

Я согласен с этим, но хотелось бы где-то зарегистрировать что-то, позволяющее игнорировать ошибки отображения такого типа. Я пытался использовать зарегистрированный DeserializationProblemHandler (см. здесь), но он, похоже, работает только с неизвестными свойствами, а не с проблемами десериализации.

Есть ли у вас какие-либо подсказки по этому вопросу?

17
задан StormeHawke 15 May 2015 в 21:31
поделиться