1
我試圖將json反序列化爲抽象類型時出現錯誤。傑克遜多態反序列化字段錯誤
代碼:
@JsonTypeInfo(use=JsonTypeInfo.Id.CLASS, include=JsonTypeInfo.As.PROPERTY, property="@class")
public abstract class Animal
{
}
public class Dog extends Animal
{
}
public class Zoo
{
Animal a;
}
@RequestMapping(value = "/zoos", method = RequestMethod.POST)
public void create(@RequestBody Zoo zoo)
{
...
}
當我發佈以下JSON到動物園:
{
"@class": "com.example.Dog",
"a": {}
}
我得到的錯誤: org.codehaus.jackson.map.exc.UnrecognizedPropertyException:無法識別字段「@class」(Class com.example.Zoo),未標記爲可忽略
我在做什麼錯?
FWIW,我認爲有一個新的配置將類型元素外部化到JSON中與目標對象相同的嵌套級別。換句話說,它將類型元素移動到目標對象的外部。 – 2013-03-26 21:00:47