【问题标题】:Jackson dataformat XML - is it possible to parse element content as a raw string?Jackson dataformat XML - 是否可以将元素内容解析为原始字符串?
【发布时间】:2020-10-31 13:55:03
【问题描述】:

我尝试使用 Jackson 编写 xml/json 解析器。我使用支持 XML 的 jackson-dataformat-xml。我需要将其中一个 XML 元素的内容提取为原始字符串并将其原样放入 POJO。

<rootElement>
  <elementNumberOne>...</elementNumberOne>
  <rawElement>rawElementContent<rawElement>
</rootElement>

rawElementContent 可以是字符串或 XML 结构。尽管 rawElement 内部有什么,但目标是将其提取为原始值。

我尝试使用@JsoneDeserialize 和自定义反序列化器,但无法从中获取原始原始 xml。我唯一实现的就是在自定义反序列化器中使用 XmlMapper 并使用:

mapper.writeValueAsString(jsonNode);

但这是一种解决方法而不是解决方案(将 Xml 获取到 Json 并再次执行相反的方法)。

你知道更好的方法吗?或者杰克逊不可能?

【问题讨论】:

    标签: java xml jackson deserialization jackson-dataformat-xml


    【解决方案1】:

    我联系了 jackson-user 组并得到用户 Tatu 的回复,他确认目前不可能。因此,如果您想坚持使用 Jackson,可以使用我在原始问题 (mapper.writeValueAsString) 中提供的解决方法。

    大图鼓励我补票,有兴趣可以关注:https://github.com/FasterXML/jackson-dataformat-xml/issues/417

    【讨论】:

      猜你喜欢
      • 2021-09-19
      • 1970-01-01
      • 2013-12-25
      • 2021-01-06
      • 2017-08-28
      • 1970-01-01
      • 1970-01-01
      • 2017-03-06
      • 1970-01-01
      相关资源
      最近更新 更多