微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Gson 无法序列化 - java.lang.UnsupportedOperationException:尝试序列化忘记注册类型适配器?

如何解决Gson 无法序列化 - java.lang.UnsupportedOperationException:尝试序列化忘记注册类型适配器?

抛出错误的对象类型的 XSD 片段看起来像 -

..
<xs:group name="CompositeElement">
 <xs:choice>
  <xs:element name="Element1" type="Element1"/>
  <xs:element name="Element2" type="Element2"/
 </xs:choice>
</xs:group>
..
<xs:complexType name="CompositeElementPair">
 <xs:sequence>
  <xs:group ref="CompositeElement"/>
  <xs:group ref="CompositeElement"/>
 </xs:sequence>
</xs:complexType>
..

为 CompositeElementPair 生成的 Java 类指示一个 List,其中 @XmlElementRefs 指向 Element1 和 Element2。

我们为 Element1 和 Element2 定义了自定义类型适配器。这些在创建期间注册到 gson 对象。

Gson 用户指南提到了反序列化复杂列表时的问题。但是,不确定为什么它在序列化步骤本身失败?

我们想了解使用 Gson 序列化和反序列化复杂列表的最佳方法是什么。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。