问题标签 [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.
glassfish - 不能对球衣中的单个对象使用自定义对象映射器(适用于集合)
我在 glassfish 服务器上使用最新版本的 Jersey (2.13) 以及最新版本的 jackson (version. 2.4) 。我已经编写并注册了一个自定义 ObjectMapper,但我的自定义 objectmapper 似乎只对集合进行了序列化。
我在此页面上看到了类似的问题:https ://java.net/jira/browse/GLASSFISH-20815 但那里提出的解决方法对我不起作用。
我的球衣映射器提供者类:
@Provider 公共类 JerseyMapperProvider 实现 ContextResolver {
...
java - 是什么导致了 fastxml 同学中的这个 java.lang.ClassCastException
我有一个使用休眠验证器验证用户数据的代码。我有一些用户可能会输入我的程序的实体,它们是从抽象类“AbstractEntity”继承的。这段代码运行良好。
但后来我让 AbstractEntity 扩展了我编写的另一个抽象类。我现在得到一个例外,我在 Internet 上找不到任何相关信息。
这是产生异常的代码行:
这是一个产生异常的示例实体:
这是抽象实体:
这是 AbstractEntity 扩展的 GenericRepository:
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"
谢谢!
java - 杰克逊序列化 - 过滤后摆脱空属性
我正在使用 Jackson 2.4.3 和,ObjectMapper
它被配置为排除空属性(排除以前的空属性可以正常工作,但如果我的过滤器跳过了属性值,仍然会出现在 JSON 中。最后,我有一个带有空属性的 JSON 文件,这是非常不可接受的:JsonInclude.Include.NON_EMPTY
PropertyFilter
有没有办法摆脱那些空属性?
让我还要补充一点,最后 JSON 相当大且复杂,出于性能原因,JSON 应该由 Jackson 自己生成,无需任何额外工作。我试图找到尽可能简单的解决方案。
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 序列化,则不序列化。
但我不知道如何继续/要覆盖哪个类。这是可能的还是对此有任何其他看法?请建议。
添加的课程
注意:我现在不担心反序列化。即,地址对象的丢失。
提前致谢。
java - 如何使用fastxml jackson忽略我没有的对象
我对 java 和 android 编程非常陌生,在我必须维护的应用程序中,我们使用 fastxml jackson 从服务器反序列化内容。
我们必须处理从服务器获得的信息(对象),但我们只是不想处理一些类。
问题是,每次来自 RestTemplate 的函数 getForObject 收到我们在代码中没有的这些对象之一,因为我们不在乎,库会抛出如下异常:
我试图通过将属性“FAIL_ON_UNKNOWN_PROPERTIES”设置为 false 来忽略这一点,但它不会改变任何东西,因为它不是我想忽略的属性,而是一个完全的对象......
有人知道跳过这些异常的方法吗?
谢谢!
java - 使用 FasterXML 将 XML 转换为地图
如何将 xml 文件转换为地图?
到Map<String, Node> treeDeps
?
这是节点类
我不想创建一个单独的实体来保存所有树。而不是我想将所有东西解组到Map
.
这是我的解组代码
更新
现在我可以解析数据了。但我不需要向我的 Map 添加一个<tree>
节点。所以我需要排除它。我该怎么做?
java - 如何使用 FasterXML 从 json 解析成对列表
假设我有以下 Java 类:
我想从例如以下 json 格式填充它:
使用更快的xml
我可能可以调用 mapper.readTree(json) 并填写我需要的所有内容。问题是我拥有的实际类(不是 Demo)包含很多参数,我想从数据绑定功能中受益。
尝试一个简单的:
给出以下错误:
有没有办法将自定义解析与数据绑定混合在一起?我查看了注释,但没有找到任何适合目的的东西(我无法让 mixins 与泛型一起使用,未调用 the_list 的自定义设置器可能是因为它是一个列表,JsonCreator 不是一个选项,因为我没有写对类...)。
java - JsonFormat注解解析两种日期类型
我有一个问题,我想将不同类型的日期字符串解析为时间戳。
我用了
当毫秒后给出毫秒值时解析是好的,但是如果我提供"16-DEC-2014 15:20:30 IST"
这种类型的日期,就会低于异常::
但如果我提供 "16-DEC-2014 15:20:30.000 IST"
,那么没有问题。但如果不存在,我不想提及毫秒值。
我试图提供两个模式值
但发生编译错误。我尝试使用不同的组合,但没有希望。请帮忙。非常感谢。
json - 带有 ember 命名空间的 JSON 视图
我正在使用带有 org.springframework.web.servlet.view.json.MappingJackson2JsonView 的 spring mvc 从控制器返回 json 对象,要与 ember RestAdapter 集成,我需要返回带有命名空间的 json。我怎么做 ?目前我有以下控制器,它返回一个对象(JSON),它可以是客户 ID 列表或客户对象列表,
我得到的输出是,
如果我包含一个查询字符串,
别的
我想要的结果是,
我怎样才能做到这一点?