Использование этой структуры классов
public class Customer{
private String name;
private String store;
private T details;
}
public class Details{
private String dob;
private boolean validated;
}
Это работает, когда JSON имеет следующий вид
{
"name": "John Smith",
"store": "Walmart",
"details": {
"dob": "1900/01/01",
"validated": true
}
}
Но когда данный ответ JSON выглядит так, как показано ниже, он терпит неудачу.
{
"name": "John Smith",
"store": "Walmart",
"details": [
"Failed customer does not exist in the system", "Please contact administrator"
]
}
Можно ли с помощью картографа Джексона каким-либо образом справиться с этими сценариями? Если сведения указаны как pojo, запишите их как таковые, в противном случае запишите сведения как строковое значение. Я определил свой картограф именно так
private static final ObjectMapper Mapper = new ObjectMapper() {{
setSerializationInclusion(JsonInclude.Include.NON_NULL);
setDateFormat(new SimpleDateFormat("MM/dd/yyyy HH:mm:ss z", Locale.US));
configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
}};
Подробнее здесь: https://stackoverflow.com/questions/786 ... t-detected