如何让jsontypeinfo在未知类型上返回null?

如何让jsontypeinfo在未知类型上返回null?,json,jackson,Json,Jackson,我有如下代码 @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type", visible = true, defaultImpl = Default.class) @JsonSubTypes({ @Type(value = T1.class, name = "t1"), @Type(value = T2.class, name = "t

我有如下代码

    @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type", visible = true, defaultImpl = Default.class)
@JsonSubTypes({ 
    @Type(value = T1.class, name = "t1"), 
    @Type(value = T2.class, name = "t2"),}
) 
public abstract class T{
}
另一类可能像书一样

class Foo{
T t;
T anotherT;
}
但是,如果类型未知,它将返回一个默认实例。如果我没有指定defaultImp,jackson只会抛出一个异常

 Could not resolve type id 't3' into a subtype of T
我已将\u UNKNOWN\u属性上的反序列化Feature.FAIL\u设置为false

我需要的是,如果类型不是't1'或't2',只需将值设置为null,然后继续解析。 我怎么做


谢谢

一个有趣的问题,尽管我相信这很难实现,因为它会破坏反序列化。您希望框架如何处理非T1或T2的反序列化T类型?使用抽象类?只有当json数据中有一些java代码不支持时,才会出现问题。Java到json总是很好的。我只希望json解析部分以静默方式失败。与未知属性失败一样,未知属性错误。json仍然是有效的json,因此代码应该能够继续。