Java Jackson 2.5-JsonMappingException:缺少外部类型id属性

Java Jackson 2.5-JsonMappingException:缺少外部类型id属性,java,json,serialization,jackson,Java,Json,Serialization,Jackson,我有一个外部属性为“contentType”的类: “contentType”可以是以下内容之一: @JsonSubTypes({ @JsonSubTypes.Type(SecureFormSubmission.class), @JsonSubTypes.Type(SecureFormInvitation.class), @JsonSubTypes.Type(TextPlain.class), @JsonSubTypes.Type(

我有一个外部属性为“contentType”的类:

“contentType”可以是以下内容之一:

@JsonSubTypes({
        @JsonSubTypes.Type(SecureFormSubmission.class),
        @JsonSubTypes.Type(SecureFormInvitation.class),
        @JsonSubTypes.Type(TextPlain.class),
        @JsonSubTypes.Type(HostedFile.class),
        @JsonSubTypes.Type(ExternalFile.class)
})
public interface ContentValue{
}
当我尝试反序列化缺少“contentType”字段的JSON时,会出现以下错误:

com.fasterxml.jackson.databind.JsonMappingException:缺少外部类型id属性“contentType”

我尝试添加一个'defaultImpl=NoClass.class'和一个defaultImpl=MyOwnCustomClass',它清除了错误,但结果是一个没有任何'contentType'的对象

我想要的是,如果“contentType”字段丢失,请使用默认值


提前感谢。

您可以使用
@JsonIgnoreProperties(ignoreUnknown=true)注释该类。
我不想忽略该属性。我想补偿丢失的财产。
@JsonSubTypes({
        @JsonSubTypes.Type(SecureFormSubmission.class),
        @JsonSubTypes.Type(SecureFormInvitation.class),
        @JsonSubTypes.Type(TextPlain.class),
        @JsonSubTypes.Type(HostedFile.class),
        @JsonSubTypes.Type(ExternalFile.class)
})
public interface ContentValue{
}