【问题标题】:Deserialization of Sets / Lists from JSON using Jackson and Spring 3.0 fails使用 Jackson 和 Spring 3.0 从 JSON 反序列化集合/列表失败
【发布时间】:2011-05-19 07:01:37
【问题描述】:

我在反序列化包含集合的 POJO 对象时遇到问题

例如

class C {
    Set<SomeObject> set;
    ...
}

使用 Jackson 1.8 自动映射,我可以正确获取所有属性,但如果我使用集合,我会得到这个

org.codehaus.jackson.map.JsonMappingException: 意外的令牌(START_OBJECT), 预期 VALUE_STRING:需要 JSON 包含类型 id 的字符串(对于 java.util.Set 的子类型)

任何想法我做错了什么?类型/类型擦除中的泛型是罪魁祸首吗?那我该如何解决呢?

免责声明,我在序列化时使用 Hibernate 持久实体,而反序列化不在会话中

【问题讨论】:

    标签: json hibernate spring jackson


    【解决方案1】:

    JSON 数据的结构不同于 POJO 的结构;如果您可以在此处包含 JSON,则应该很容易找出发生不匹配的确切位置。集合应该处理得很好,但它们需要与 JSON 数组匹配。

    【讨论】:

      猜你喜欢
      • 2019-09-28
      • 1970-01-01
      • 1970-01-01
      • 2018-12-26
      • 2019-06-23
      • 2014-07-16
      • 1970-01-01
      • 2015-08-07
      • 2020-06-08
      相关资源
      最近更新 更多