У меня есть следующий JSON:
{"resourceWithType":
{"parentId":0,
"pluginId":0,
"pluginName":"Platforms",
"resourceId":10001,
"resourceName":"snert",
"typeId":10057,
"typeName":"Mac OS X"
}
}
А класс
public class ResourceWithType {
String resourceName;
int resourceId;
String typeName;
со всеми геттерами и сеттерами и т. Д.
Приведенный выше JSON был фактически создан с помощью RESTeasy и провайдера Jettison, где класс был помечен @XmlRootElement
.
Когда я пытаюсь десериализовать вышеупомянутый JSON через
ObjectMapper mapper=new ObjectMapper();
ResourceWithType rwt = mapper.readValue(json,ResourceWithType.class);
Не удается с
06-13 11:07:55.360: WARN/System.err(26040):
org.codehaus.jackson.map.exc.UnrecognizedPropertyException:
Unrecognized field "resourceWithType"
(Class org.rhq.core.domain.rest.ResourceWithType),
not marked as ignorable
Что-то вроде понятно.
Как я могу сказать Джексону, что встроенный 'resourceWithType' на самом деле является классом для десериализации?
Другим вариантом было бы сказать, что отказ от включения этого типа - как?