С помощью следующей аннотации я могу сказать Джексону использовать класс Converter
для дополнительной пост-обработки десериализованных данных:
@JsonDeserialize(converter = MyConverter.class)
public MyConstrainedMap property;
Например, следующий конвертер преобразует карту в пользовательскийвведите MyConstrainedMap
:
public static class MyConverter extends StdConverter<Map<String, Object>, MyConstrainedMap> {
@Override
public MyConstrainedMap convert(Map<String, Object> rawMap) {
// ... check values
return new MyConstrainedMap(rawMap);
}
}
Мой вопрос: что делать, если преобразование невозможно?Было бы целесообразно выбросить одно из исключений Джексона, например, JsonMappingException
, но это исключение проверено, и convert
не допускает никаких проверенных исключений.
Так что мне следует делать вместо этого.Бросай RuntimeException
?