问题标签 [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.
java - 从 Jackson 2 中的共享 ObjectMapper 构造 ObjectWriter 的特定实例以忽略空字段
我正在与杰克逊 2 和 CXF 合作。
我进行了大量研究,以找到一种干净且安全的方法来从共享对象映射器中获取写入器对象,该映射器提供给 CXF 用于取消/编组 JSON。由于某些业务逻辑,我不能只使用注释或将映射器对象设置为在序列化时忽略空字段。
下面的代码似乎很正确,但是输出的 JSON 仍然包含空字段。请帮忙 !!
if 案例验证我已成功禁用 SerializationFeature.WRITE_NULL_MAP_VALUES。但是,结果仍然是包含空字段。
xml-serialization - 将 ArrayList 中的对象序列化为 XML 时丢失类型元素
在使用 Jackson 序列化为 XML 时,我似乎遇到了问题。我的代码如下:
测试容器
测试孩子
采用
序列化:
XmlMapper xm = new XmlMapper(); TestContainer tc = xm.readValue(sb.toString(), TestContainer.class);
反序列化:
System.out.println(xm.writeValueAsString(tc)); tc = xm.readValue(sb.toString(), TestContainer.class);
我正在做的是从类路径上的文件夹中加载 XML 文件,并将文件的内容放入 StringBuffer 中。问题是为对象集合生成的 XML。在编写 XML 时,我想要类似的东西:
但我得到:
我不确定我在这里错过了什么。我对序列化/反序列化的 JSON 部分没有问题,只有 XML。我尝试使用 Jackson 和 JAXB 注释来关闭包装,我尝试使用以下注释:
- @JsonRootName
- @JsonProperty
- @JacksonXmlElementWrapper
- @杰克逊元素
- @XmlElementWrapper
- @XmlElement
我很确定这对我来说是愚蠢的,但任何帮助将不胜感激。
json - 让@jsonignore 在isMethod 上使用setter?
这是我的课
我的代码与 getRoom 和 isRoom 混淆了。
引起:java.lang.IllegalArgumentException:属性“房间”的吸气剂定义冲突:com.shared.model.restimpl.jpa.HouseJPAImpl#getRoom(0 params) vs com.shared.model.restimpl.jpa.HouseJPAImpl#isRoom( 0个参数)
我尝试将@jsonignore 放在 isRoom 方法上,但后来我没有在 JSON 中获得房间属性。
有没有办法在 isRoom 上使用 getRoom?
java - 通过fasterxml将XML文件解析为POJO时出现异常“没有为类型[简单类型...找到合适的构造函数”
我需要使用 jackson-dataformat-xml 将一些 XML 文件反序列化为常规 java 对象。所以我在做:
xmlString出现:
和类证书:
在尝试取消实现 XML 后,我得到了异常:
“没有为类型 [简单类型,类 ua.max.Certificate$R] 找到合适的构造函数:无法从 JSON 对象实例化”
我的尝试:
1. 如果我为我的内部类添加修饰符“static”,它正在工作,我得到 java 对象,但除了 2 个对象列表“ATT-SEARCH”之外,我得到的第一个是 null
2. 添加不同的构造函数确实不产生任何影响
json - json 文件中的 Camel Case 属性名称未映射到 Java 对象
我有一个 json 对象,其属性名称如下:itemsRequired
, sortable_list
. 在我的 ObjectMapper 中,我有
随着这sortable_list
被映射到 POJO 中的适当属性,但itemsRequired
被忽略。而如果我删除PropertyNamingStrategy
, 则itemsRequired
可以,sortable_list
但不能。如果我想让两者一起工作应该怎么做?
我正在使用 fastxml 库。我也尝试过 codehaus 的 jackson,结果相同。
更新:POJO如下,
而 JSON 是,
如果我有上面的 JSON,一切正常。但是当我将 JSON 更改为时,事情不起作用,
itemsRequired 在后一种情况下被忽略。
我希望它在这两种情况下都能工作,无论它被命名为items_required
还是itemsRequired
.
java - Fasterxml Jackson 原始布尔序列化
我正在使用 Fasterxml Jackson 2.2.2
我有一个带有boolean
(原始)属性的简单 pojo。当默认BeanSerializer
并BeanPropertyWritter
尝试对其进行序列化时,该属性的值为 时会被跳过false
。
我想:
我得到的是:
中的代码BeanPropertyWritter
是:
我已经调试过它,发现BeanPropertyWritter._suppressableValue
equals Boolean(false)
,所以当一个错误的布尔值到达这个块时,它只是返回并且不返回任何输出。
我有哪些选择?我可以将属性的写入器配置为取消设置_suppressableValue
吗?什么是最简单和更简单的解决方案?
java - 杰克逊不反序列化
我正在努力使用 Jackson fastXml 反序列化。我想有一些关于类型信息和多态使用的东西。在阅读杰克逊文档和这个之后,我尝试了不同的东西,但仍然没有设法得到它。序列化进展顺利,但反序列化生成的字符串并没有成功。
在此先感谢您的帮助
这是课程:
这是堆栈跟踪:
java - 使用 com.fasterxml.jackson 解析 yaml
我正在尝试使用杰克逊将 yaml 文件解析为模型
型号——
解析
yaml 文件
例外