问题标签 [jackson-dataformat-xml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
278 浏览

java - Android:我可以/应该使用“jackson-dataformat-xml”进行 XML(un)编组吗?

我的 Android 应用程序将使用 XML 与 Spring Boot REST 服务进行通信。

JAXB 对于 Android 来说并不容易(或重量轻)。因此,我阅读了有关使用 jackson-dataformat-xml 的信息。我使用(嵌套)对象列表。

我的问题:这是(取消)编组 XML 消息的首选方式吗?如果没有,Android 有什么好的选择?如果是这样,您能帮助解决以下问题吗?

JUnit 测试很容易通过。编译可以使用:

无法运行应用程序。我得到各种各样的错误,比如这些:

编辑: 与此同时,我看到 Simple XML 得到了很好的评价。

0 投票
1 回答
429 浏览

java - 无法将 XML 映射到 Jackson 中的 POJO 列表

我需要采用类似于以下内容的 XML:

我想将其映射到“设备”POJO 列表中。我正在使用 Jackson XML 映射和 Lombok,所以基本上我现在将其分为两个类,首先是应该读取其中的根对象<root:ElementName>并将所有<equipment:Equipment>标签转换为设备对象列表:

然后是设备对象本身:

起初,我在 Equipment 对象中没有带有 @JsonCreator 的构造函数,并且会收到“没有从字符串值反序列化的字符串参数构造函数/工厂方法”错误,经过一些研究,我添加了构造函数来解决这个问题。有了这个我克服了那个错误,但是映射后返回的设备对象列表的所有字段都设置为空。尝试映射这些 XML 属性时,我在这里遗漏了什么/做错了什么?

0 投票
2 回答
2244 浏览

spring - 编组/解组 XML 的 Spring 引导方式

什么是自动编组/解组 XML 的“Boot-iful”方式?

我的休息控制器:

ProvisioningRequest 类由 Jaxb 从 XSD 生成。

将示例请求发布到其余端点会出现以下错误:

我在类路径中有'com.fasterxml.jackson.dataformat:jackson-dataformat-xml'。

配置 @Bean Jackson2ObjectMapperBuilder 似乎也无济于事。

我错过了什么吗?

=== 完整的堆栈跟踪:

0 投票
1 回答
191 浏览

java - 使用 Jackson 解析 GSA XML 列表

我有来自 GSA 服务器的以下 XML 响应。基本上它有

如何用 Jackson 解析这个 XML?这是我的代码

他们都有 setter 和 getter,这只是一个例子。我可以一直到 RES,但我无法让“resultados”字段填满 R 结果列表。发生此错误:

0 投票
0 回答
609 浏览

xml - 对于日期序列化:从 JAXB2 到 jackson-dataformat-xml 的 @XmlJavaTypeAdapter 的等效注释是什么?

我有一个使用该4.3.6版本的 Spring Web 应用程序。直到某个时候,它都适用于 XML 和 JSON。

  • 对于 Json,我使用 Jackson。
  • 对于我曾经使用过的 XML JAXB2,但现在不再使用了,因为它不支持通用集合

通用集合表示为:

因此,对于从jackson-dataformat-xml项目XML转移JABX2Jackson使用的应用程序

要序列化一个Datefor JSON,我使用:

并使用如何:

对于 XML,当JAXB2使用时,再次对Date序列化使用以下内容:

并使用如何:

由于这种从Jaxb2到的迁移,jackson-dataformat-xml我知道后者忽略JAXB2注释。因此现在与:

因此从@XmlElement(name="fecha")@JacksonXmlProperty(localName="fecha")

现在的问题是也@XmlJavaTypeAdapter(XmlDateAdapter.class)被忽略了。

问题

@XmlJavaTypeAdapterfrom JAXB2to的等价注解是什么jackson-dataformat-xml

0 投票
4 回答
4074 浏览

json - json xml转换器在json字符串中有数组

我需要将 json 转换为 xml,然后再将该 json 转换回 xml,但是在此转换时我丢失了 json 数组对象 - 我正在使用 org.json lib。

json字符串 -

代码库 - 使用 org.json 库

输出 xml 和 json -

在这里,这个 json 没有任何数组,因为它在原始 json 中。请建议替代图书馆做同样的事情。

0 投票
0 回答
125 浏览

jackson - Jackson ObjectMapper - JSON 值中的 XML

我有一些 JSON 由我无法控制的系统提供,其中包括一些 JSON 值中的 XML(在不可预测的位置)。

例子:

我正在使用 Jackson 将其解析为 JsonNode,然后使用 Jackson XMLMapper 将其写为 XML,但是此时所有 < 字符都变为 < 我的 XML 块只是字符串。

我想,在与 Jackson 解析并使用 XMLMapper 再次写回 XML 后,最终得到如下输出:

我并不完全反对遍历整个树并寻找有效的 XML 子元素,但鉴于 JsonNode 是不可变的,我不确定我是否能找到一种方法。此外,我应该对真正使用 < 符号(即,不是有效 XML 的 JSON 值)稍加防范。

关于我如何做到这一点的任何想法?

0 投票
1 回答
1194 浏览

java - (De) 使用 jackson xml 序列化混合内容?

通过我所做的所有搜索,我了解到使用混合内容的杰克逊对 xml 进行序列化/反序列化是有问题的。有人知道使用 Java 处理以下 xml 的方法吗?

我正在使用以下 POJO:

如果节点有混合内容,如上面的例子,我会得到以下错误:

如果节点有纯文本,则反序列化有效。

我尝试使用 JsonNode、TextNode、ObjectNode、Object 而不是 String 作为数据类型。我尝试了自定义序列化器和反序列化器,但错误仍然存​​在。事实上,如果节点中有 html,则处理不会到达自定义反序列化器。

此 xml 来自我无法更改的第 3 方系统 (SDL Tridion)。

任何帮助将不胜感激!

编辑:我需要澄清该节点可以包含标记或可以包含纯文本,因此我无法创建代表您在上面的 xml 中看到的标记的 POJO。并且其中的标记也可能比上面的示例复杂得多。这就是为什么我只是试图将它强制转换为字符串。我不需要操作它,我只需要将它保存在 POJO 中,这样它就可以原封不动地返回到数据库中。

0 投票
1 回答
843 浏览

jackson - com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.String out of START_OBJECT token

when deserializing below JSON, it fails with above exception message when trying to parse the server attribute which has its type 'string' nested within it, how to parse a JSON which is having the attribute types nested within each attribute like below?

0 投票
1 回答
689 浏览

java - 将 XML 的内部反序列化为新的类实例

给定以下(简化)格式的 XML:

我想将元素反序列<inner>化为代表该元素的类并丢弃其余元素。

我正在使用 JacksonXmlMapper类来执行反序列化。如果我去掉<outer>xml 字符串,它显然可以工作。

如果我留下<outer>元素,所有字段inner都为空。

我试过用注释Inner类,@JacksonXmlRootElement(localName = "inner")但这并没有改变输出。

我可以创建一个代表<outer>元素的类,但这似乎很浪费。我可能还可以创建一个仅包含<inner>元素之间的 xml 的新字符串,但同样感觉有点 hacky。

在我的情况下,xml 是由一个我无法控制的单独系统广播的,所以我可以简单地修改 xml 结构。

是否可以将“内部”xml 反序列化为新的类实例?