Java Jackson 2.5-JsonMappingException:缺少外部类型id属性
我有一个外部属性为“contentType”的类: “contentType”可以是以下内容之一: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(
@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{
}