问题标签 [fasterxml]

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 回答
375 浏览

java - 使用具有以下格式的 com.fasterxml.jackson 将 bean 序列化为 json 字符串

一般来说,jackson是将bean序列化为标准的json格式,例如下面这个类:

将序列化为以下 json:

但我想得到这样的格式(非标准):

也就是说,尽管类型如何,我都不想输出双引号。提前感谢您的帮助!

0 投票
1 回答
639 浏览

java - 反序列化对多个对象的 JSON 响应

我需要反序列化 Json 响应

分成3个不同的对象,即

这是我目前所拥有的

问题:我的customerializer 永远不会被调用。我通过调试点验证了这一点

我正在使用 FasterXML Jackson

知道如何使用自定义反序列化器来做到这一点。

0 投票
2 回答
3076 浏览

json - Spring未检测到Json Deserializer

我有一个 Spring Rest 控制器和一个用于控制器上 POST 方法的“命令”/DTO 对象。我还为“到期”字段之一编写了一个序列化器/反序列化器——它是一个日历对象。

由于 Jackson2 依赖项是在 pom.xml 中定义的,因此我希望 Spring 能够检测到我的反序列化器并使用它将字符串输入转换为 java.util.Calendar。但是,我收到“未找到匹配的编辑器或转换策略”异常。我的序列化器正在工作……只有反序列化器不起作用!

休息控制器 (TaskController.java)

命令 /dto 对象:

日历的序列化器 - 用于我的自定义日期格式

日历的反序列化器

我在 Maven 中指定了 Jackson2 依赖项。执行 GET(此处未显示代码)时,序列化程序被正确调用,并且我看到“任务”对象的 JSON 输出。

但是,当我如下进行 HTTP POST 时

解串器从未被检测到,我得到一个异常

由于检测到序列化程序,我不明白为什么没有检测到并正确调用反序列化程序。根据我的阅读,Spring 将检测到在类路径上有 Jackson2 库,它会自动将 MappingJackson2HttpMessageConverter 添加到消息转换器列表中。所以这段代码应该检测 HTTP POST 中的字符串,并使用 Deserializer 将其转换为 java.util.Calendar。我错过了什么?

0 投票
0 回答
166 浏览

java - 我需要将其视为字符串字段的 json 中的 Json

有人问过类似的问题 如何编码嵌入在 JSON 中的 JSON

现在我传入的 json 看起来像

其中 Context 对象的一部分将是可变的,源系统将相应地发送因此对于 Context 字段,我们需要将整个 Json 作为

作为字符串

对于以后的用例,它也需要被解析为一个对象。

添加使用 com.fasterxml.jackson.databind.ObjectMapper.ObjectMapper 进行解析的代码

这会引发错误

0 投票
1 回答
14174 浏览

java - 如何使用 FasterXML 反序列化带有注释的 XML

我有以下 XML 架构:

我需要将其转换为 POJO:

这里有两件重要的事情需要注意:

  1. 课程对象未包含在标签中
  2. 一些属性是属性

我如何需要注释我的对象才能让 FasterXML 反序列化这个 xml?

0 投票
1 回答
1027 浏览

java - Resteasy spring 自定义对象映射器

由于我在 @transaction 注释中发现的问题,我正在将我的 guice 应用程序转换为 spring。这样做时,我遇到了使用 spring/resteasy 配置自定义对象映射器的问题。我想注册 hibernate4Module (fasterxml jackson) 和自定义反序列化器。

我在使用spring mvc时找到了很多解决方案,但我没有使用spring mvc。我正在查看 resteasyboostrap 类,因为你可以控制你的工厂,但我不知道如何在那里注册我的新 SimpleModule。

有任何经验的人吗?当我在互联网上搜索时,似乎没有人试图做同样的事情。也许我在寻找错误的地方?

0 投票
0 回答
448 浏览

jackson - 从 jackson(codehaus) 1.9 升级到 jackson(fasterxml) 2.3

我一直面临与将开源应用程序从 jackson 1.9 升级到 jackson 2.3 相关的问题。

问题出在方法 objectmapper.readvalue 中。我最初使用的版本是 objectmapper.readvalue(jsonnode,typereference),带有一个与 simplemodule 一起注册的 jsondeserializer。

现在这种方法在 jackson2.3 中已弃用,为此我计划使用 objectmapper.readvalue(jsonparser,typereference) 通过 jsonnode.traverse() 获取 jsonparser。

但是jsonparser通过这种方式导致通过jsonparser.getCodec()给出了一个null objectmapper,这是一种标准的获取结果的方式。

此代码完全适用于杰克逊 1.9 ..

我不太熟悉杰克逊,也无法在网上找到足够的文件来迁移到新的杰克逊。

期待在这方面的任何指针/帮助......

提前致谢

0 投票
1 回答
50 浏览

java - 基于用户定义值的自定义序列化

我有一个pojo

我将这个 Java 对象用于GETPOSTPUT api 调用。我使用了@JsonIgnore注释来避免序列化(所以它不会为PUTPOST请求序列化,但我得到了GET请求)。现在我需要 baseId 应该为POST请求序列化,而不是为PUT请求序列化。请建议我解决方案。

0 投票
5 回答
207518 浏览

java - 无法读取 JSON:无法从 START_OBJECT 令牌中反序列化 hello.Country[] 的实例

我有提供所有国家/地区的休息网址 - http://api.geonames.org/countryInfoJSON?username=volodiaL

我使用 Spring 3 中的 RestTemplate 将返回的 json 解析为 java 对象:

当我运行此代码时,出现异常:

最后是我的国家课:

问题是返回的 json 包含根元素“geonames”,其中包含国家元素数组,如下所示:

如何告诉RestTemplate将数组的每个元素转换为Country对象?

0 投票
2 回答
74 浏览

java - 杰克逊忽略了身体的末端

我对fastxml Jackson有一个问题,它忽略了对象之后的所有内容,例如:

我不知道在这种情况下是否可以抛出错误。如果意外消息在开头,它会按我的意愿失败。配置属性DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES设置为 true。