无法构造实例 \- 杰克逊

新手上路,请多包涵

我正在使用 Jackson 并且遇到问题,当我尝试反序列化对象时出现以下错误:

 com.fasterxml.jackson.databind.JsonMappingException:
    Can not construct instance of net.MyAbstractClass,
    problem: abstract types either need to be mapped to concrete types,
        have custom deserializer, or be instantiated with additional type information

我在属性中遇到问题:

 @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.WRAPPER_OBJECT, property = "@id")
@JsonSubTypes({ @JsonSubTypes.Type(value = MyAbstractClass.class, name = "MyAbstractClass") })
@ManyToOne
private MyAbstractClass object;

谁能帮帮我?

原文由 Danilo M. 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 657
2 个回答

我在使用 lombok 的 @Data@Builder 注释时遇到了这个问题,我将其替换为:

 @Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Builder

它解决了我的问题。

原文由 Gabriel Andrade 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题