问题标签 [play-json]

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

json - Scala PlayJson 循环参考

语境

我有一个案例类,它是层次结构中的一个项目,它像这样引用自身:

我想要一个 PlayJson Format

通常,您可以这样做:

但这不起作用。

为什么?

PlayJson 使用 Scala 宏Format为案例类生成一个,它将遍历所有字段,当它到达该字段children时,它将查找Node尚未为其构建的现有格式化程序,并以编译错误结束:


问题

解决这个问题的最佳方法是什么?
这是 PlayJson 格式宏的已知问题吗?

0 投票
1 回答
510 浏览

json - 从json文件scala play中提取案例类

我试图将我的数据从 json 提取到一个案例类中,但没有成功。

json文件:

我的代码:

在运行这个我进入 r1 之后:

JsError(List((/elements,List(ValidationError(List(error.path.missing),WrappedArray()))), (/name,List(ValidationError(List(error.path.missing),WrappedArray())) ), (/location,List(ValidationError(List(error.path.missing),WrappedArray())))))

一直试图永远提取这些数据,请指教

0 投票
0 回答
424 浏览

scala - scala错误:错误的符号引用

我正在使用 sbt 编译 scala 代码,并收到以下错误消息

我正在使用 play json 库来解析我的主类中的 json 文件。build.sbt 文件的内容如下:

我对 scala 和游戏框架完全陌生。有人对这个问题有任何线索吗?谢谢!

0 投票
2 回答
871 浏览

json - 在 scala 中播放 json:使用未知字段反序列化 json 而不会丢失它们

考虑我有一个json如下:

我确定 json 将包含 a、b、c,但我不知道这个 json 可能包含哪些其他字段。

我想将此 JSON 序列化为包含 a、b、c 的案例类,但另一方面不要丢失其他字段(将它们保存在地图中,以便将类反序列化为与接收到的相同的 json)。

想法?

0 投票
1 回答
149 浏览

json - Scala 案例有 22 个字段,但在 scala 2.11.5 中存在 play-json 问题

我们目前正在使用 scala 2.11.5,我班的 1 个有 22 个字段。

环顾四周,我遇到了一个解决方案并应用了它

我确信我已经关注并尝试了这个链接。不幸的是,它不起作用,我仍然有错误

有人可以建议其他方法来拆分 22 个字段Read吗?

0 投票
2 回答
1113 浏览

json - 读取序列时播放 JSON 读取错误

我有以下案例类:

这是我从数据库中获取的 JSON:

当我尝试将其验证为(其中 virtualAssetConfigParam 是我从数据库中获取的字符串)时:

我得到以下验证结果:

问题是什么?我不明白为什么这会失败!

0 投票
2 回答
650 浏览

scala - 在 Scala 中使用 Hive UDF 解析 JSON

我正在尝试为 Hive 编写一个作用于 JSON 数组的 Scala UDF——扩展org.apache.hadoop.hive.ql.exec.UDF并依赖于 play-json 的play.api.libs.json.parse.

当尝试从 Hive 中调用它时,我看到java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonToken.id()I.

我不确定原因是什么 - 与杰克逊版本有些不兼容,如果是这样,我该如何解决这个问题?

我绑定的唯一组件/版本是 Hive 1.2。

0 投票
1 回答
70 浏览

scala - 有人可以解释这段代码是如何执行的吗?

createUser 或 updateUser 如何使用 unmarshalValueJs 函数并传递参数。

什么 create User 传递给 unmarshalJsValue?资源从哪里来?

这里的R是什么?什么被传回给 createUser?

0 投票
2 回答
792 浏览

json - 播放 JSON Reads[T]:将 JsArray 拆分为多个子集

我有一个包含事件数组的 JSON 结构。该数组是“多态的”,因为存在三种可能的事件类型AB并且C

这三种事件类型没有相同的对象结构,所以我需要不同Reads的。除此之外,整个 JSON 文档的目标案例类区分事件:

如何定义内部结构,Reads[Doc]以便将 json 数组events拆分为三个子集,这些子集映射到aEvents和?bEventscEvents


到目前为止我尝试过的(没有成功):

首先,我定义了 aReads[JsArray]将原始转换为仅包含特定类型事件的JsArray另一个:JsArray

然后的想法是像这样在内部使用它Reads[Doc]

但是,我不知道如何从这里继续下去。我假设该andThen部分应该看起来像这样(在事件 a 的情况下):

但这不起作用,因为我希望 APISeq[EventA]通过显式传递 aReads[EventA]而不是Reads[Seq[EventA]]. 除此之外,由于我从未运行过它,所以我不确定整个方法一开始是否合理。

编辑:如果原始JsArray包含未知的事件类型(例如DE),这些类型应该被忽略并从最终结果中排除(而不是使整个Reads失败)。

0 投票
0 回答
278 浏览

scala - 如何在 Play Json Writes 中包含案例类主体成员?

我有:

然后使用Json.toJason(someMessage)将生成带有 、 和 字段的 Json fromtotext我也希望有messageType一个值为“重要”的字段。

我可以将消息类型字段作为构造函数参数包含在内,但这似乎是一种 hack - 消息类型字段应该是固定的,而不是指定的。

有可能实现这一目标吗?