java - Jackson polymorphism issue, unable to deserialize base class -


i'm trying use polymorphic deserialization deserialize json subclass of base class. here code:

@jsontypeinfo(use = jsontypeinfo.id.none) @jsonsubtypes({ @type(value = subclass1.class, name = "subclass1"), @type(value =   subclass2.class, name = "subclass2") }) public abstract class abstractclass {     private string commonfield1;    private commonobject commonfield2;    private string commonfield3;  public class subclass1 extends abstractclass {     private list<string> listoffields; }  public class subclass2 extends abstractclass {     private map<string, integer> stringintmap; } 

my subclass json examples

deserialization process fails

objectmapper.readvalue(subclassjson, abstractclass.class); 

this throws jsonmappingexception: cannot construct instance of baseclass.


Comments