问题标签 [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 回答
133 浏览

glassfish - 不能对球衣中的单个对象使用自定义对象映射器(适用于集合)

我在 glassfish 服务器上使用最新版本的 Jersey (2.13) 以及最新版本的 jackson (version. 2.4) 。我已经编写并注册了一个自定义 ObjectMapper,但我的自定义 objectmapper 似乎只对集合进行了序列化。

我在此页面上看到了类似的问题:https ://java.net/jira/browse/GLASSFISH-20815 但那里提出的解决方法对我不起作用。

我的球衣映射器提供者类:

@Provider 公共类 JerseyMapperProvider 实现 ContextResolver {

...

0 投票
1 回答
115 浏览

java - 是什么导致了 fastxml 同学中的这个 java.lang.ClassCastException

我有一个使用休眠验证器验证用户数据的代码。我有一些用户可能会输入我的程序的实体,它们是从抽象类“AbstractEntity”继承的。这段代码运行良好。

但后来我让 AbstractEntity 扩展了我编写的另一个抽象类。我现在得到一个例外,我在 Internet 上找不到任何相关信息。

这是产生异常的代码行:

这是一个产生异常的示例实体:

这是抽象实体:

这是 AbstractEntity 扩展的 GenericRepository:

0 投票
1 回答
3118 浏览

java - com.fasterxml.jackson.databind.ObjectMapper 本地化字符编码

在我提到我的主要问题之前有一点背景

我们有一个通过 FasterXML 将 POJO 转换为 JSON 的模块。逻辑是有多个​​ XML 先转换成 POJOS,然后再转换成 JSON。

然后将这些多个 JSON 中的每一个组合成一个 JSON 并由第三方处理。

问题一直存在,直到形成单个 JSON,一切看起来都很好。

一旦所有的 JSON 被合并并写入一个文件,本地化的字符都会被编码,而我们希望它们看起来像它们在单个 JSON 中的样子

例如单个 JSON 片段

{"title":"网络サーバに关するお知らせ"}

例如合并的 JSON 片段

{“标题”:“网络 \u30b5\u30fc\u30d0\u306b\u95a2\u3059\u308b\u304a\u77e5\u3089\u305b”}

然后将此 JSON 字符串写入文件

还尝试了以下操作,因为我认为我们需要 UTF-8 编码来处理本地化字符

相同的objectmapper代码也用于写入单个json,此时编码不会出现..

请任何人指出是什么导致了合并 JSON 级别的编码问题?

PS:代码是部署到tomcat上的战争的一部分。最初我们可以看到???(JSON 中的问号)然后我们将以下内容添加到 catalina.sh

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"

后来,我还添加了 servlet 请求编码,但这并没有帮助

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8 -Djavax.servlet.request.encoding=UTF-8"

谢谢!

0 投票
1 回答
164 浏览

java - 杰克逊序列化 - 过滤后摆脱空属性

我正在使用 Jackson 2.4.3 和,ObjectMapper它被配置为排除空属性(排除以前的空属性可以正常工作,但如果我的过滤器跳过了属性值,仍然会出现在 JSON 中。最后,我有一个带有空属性的 JSON 文件,这是非常不可接受的:JsonInclude.Include.NON_EMPTYPropertyFilter

有没有办法摆脱那些空属性?

让我还要补充一点,最后 JSON 相当大且复杂,出于性能原因,JSON 应该由 Jackson 自己生成,无需任何额外工作。我试图找到尽可能简单的解决方案。

0 投票
2 回答
1029 浏览

java - 如何在fastxml中实现自定义序列化功能

我的 JSON:

{ "name": "asdf", "age": "15", "address": { "street": "asdf" } }

如果街道为空,JsonSerialize.Inclusion.NON_NULL我可以得到..

{ "name": "asdf", "age": "15", "address": {} }

但我想得到这样的东西..(当地址不为空时,它是一个新/空对象。但街道为空。)

{ "name": "asdf", "age": "15" }

我认为有自定义序列化功能,如JsonSerialize.Inclusion.VALID_OBJECT. 在 Address 类中添加 isValid() 方法,然后如果返回 true 序列化,则不序列化。

但我不知道如何继续/要覆盖哪个类。这是可能的还是对此有任何其他看法?请建议。


添加的课程

注意:我现在不担心反序列化。即,地址对象的丢失。

提前致谢。

0 投票
2 回答
558 浏览

java - 如何使用fastxml jackson忽略我没有的对象

我对 java 和 android 编程非常陌生,在我必须维护的应用程序中,我们使用 fastxml jackson 从服务器反序列化内容。

我们必须处理从服务器获得的信息(对象),但我们只是不想处理一些类。

问题是,每次来自 RestTemplate 的函数 getForObject 收到我们在代码中没有的这些对象之一,因为我们不在乎,库会抛出如下异常:

我试图通过将属性“FAIL_ON_UNKNOWN_PROPERTIES”设置为 false 来忽略这一点,但它不会改变任何东西,因为它不是我想忽略的属性,而是一个完全的对象......

有人知道跳过这些异常的方法吗?

谢谢!

0 投票
0 回答
1329 浏览

java - 使用 FasterXML 将 XML 转换为地图

如何将 xml 文件转换为地图?

Map<String, Node> treeDeps

这是节点类

我不想创建一个单独的实体来保存所有树。而不是我想将所有东西解组到Map.

这是我的解组代码

更新

现在我可以解析数据了。但我不需要向我的 Map 添加一个<tree>节点。所以我需要排除它。我该怎么做?

0 投票
1 回答
6623 浏览

java - 如何使用 FasterXML 从 json 解析成对列表

假设我有以下 Java 类:

我想从例如以下 json 格式填充它:

使用更快的xml

我可能可以调用 mapper.readTree(json) 并填写我需要的所有内容。问题是我拥有的实际类(不是 Demo)包含很多参数,我想从数据绑定功能中受益。

尝试一个简单的:

给出以下错误:

有没有办法将自定义解析与数据绑定混合在一起?我查看了注释,但没有找到任何适合目的的东西(我无法让 mixins 与泛型一起使用,未调用 the_list 的自定义设置器可能是因为它是一个列表,JsonCreator 不是一个选项,因为我没有写对类...)。

0 投票
0 回答
3405 浏览

java - JsonFormat注解解析两种日期类型

我有一个问题,我想将不同类型的日期字符串解析为时间戳。

我用了

当毫秒后给出毫秒值时解析是好的,但是如果我提供"16-DEC-2014 15:20:30 IST"这种类型的日期,就会低于异常::

但如果我提供 "16-DEC-2014 15:20:30.000 IST",那么没有问题。但如果不存在,我不想提及毫秒值。

我试图提供两个模式值

但发生编译错误。我尝试使用不同的组合,但没有希望。请帮忙。非常感谢。

0 投票
1 回答
88 浏览

json - 带有 ember 命名空间的 JSON 视图

我正在使用带有 org.springframework.web.servlet.view.json.MappingJackson2JsonView 的 spring mvc 从控制器返回 json 对象,要与 ember RestAdapter 集成,我需要返回带有命名空间的 json。我怎么做 ?目前我有以下控制器,它返回一个对象(JSON),它可以是客户 ID 列表或客户对象列表,

我得到的输出是,

如果我包含一个查询字符串,

别的

我想要的结果是,

我怎样才能做到这一点?