问题标签 [lift-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 投票
2 回答
702 浏览

scala - Salat 没有反序列化映射到 Option[Set[A]] 的集合

我在 scala-salat Google group 中问了这个问题,但几天没有回复,因此在这里尝试。

我有一个案例类,其中包含一个包含在Option.

该文档可以很好地存储在 Mongo 中。但是,当我尝试使用findOne(使用或不使用SalatDAO)来获取此地址时,addresses 字段具有表示地址的 JSON 文本,而不是 Address 案例类。

结果,Lift-JSON 跳过了我的案例类Option[Collection[A]]中的任何字段。当我删除Option并使用时addresses=Set[Address](),它可以工作。但是,现在我的 JSON 中没有数据的结果是空集,如果消费者删除了条目,我无法找到更新,或者我得到一个空集Set,因为消费者没有发送这个字段原始请求。

使用Option会将字段设置为None,这意味着我不必担心它是空的或被修改。

任何帮助将不胜感激。

0 投票
1 回答
1352 浏览

scala - Lift-json 将带有“类型”字段的 json 提取到案例类中

我正在尝试使用 lift-json 将 JSON 提取到案例类中。这是我的案例类:

这是json

如何将type字段提取到实例中Person

0 投票
1 回答
2135 浏览

json - 组合类中的多态提升 json 反序列化

我正在尝试使用 Lift-Json 将 json 对象自动反序列化为 scala 类,其中的坐标类用于存储 GeoJson 信息。

我想反序列化这样的json字符串:

在 Geometry 字段中使用正确的 LineString 运行时类进入请求案例类。我想我应该使用 TypeHint 但如何?这是正确的方法还是应该创建三个不同的请求(RequestPoint、RequestLineString 和 RequestPolygon)?这将是反序列化的 Scala 代码:

0 投票
2 回答
1292 浏览

mongodb - 使用 Casbah 将 lift-json JValue 转换为 MongoDBObject?

我正在尝试将 lift-json 的 JValue 中解析的 JSON 文档转换为 Casbah MongoDBObject - 有没有办法做到这一点?

0 投票
4 回答
15750 浏览

string - 如何将 JSON JString 值转换为 Lift 中的普通字符串?

如果我jString : JString调用. "abc"_ 我该如何取而代之?"JString(abc)" : StringjString.toString"abc" : String

0 投票
1 回答
360 浏览

json - 使用 lift-json 解析文档片段

当我可能不知道我正在解析的文档的确切结构和顺序时,我正在尝试使用 lift-json 解析 JSON 文档。该文档包含“对象”列表,所有对象都组织成该对象类型的部分,每个部分都以该类型命名。我尝试了各种方法来循环类型,对类型名称进行模式匹配,然后尝试获取该对象列表,但它似乎永远无法正常工作。我要么得到一个空白列表,要么得到一个关于无法找到正确的 JSON 块来映射到我的案例类的错误。

这是一些(几乎是伪)代码,与我来的一样接近:

“地址”、“姓名”和“电子邮件”可以在“查询”中以任意顺序出现,并且它们的数量可能不定。

最后,我希望能够为相应的类型列表提取对象列表,然后在解析完成后,将各种对象列表传递给适当的方法。

所以,问题是:如果我提前不知道完整的文档结构是什么,我如何才能解析成 lift-json 中的案例类。

0 投票
1 回答
183 浏览

json - 有没有办法让 lift-json 将数字字符串字段自动转换为数字类型?

我正在使用 lift-json 从 POST 请求中反序列化简单对象。例子:

类定义:

然后我用

read[Topic](jsonString)

是否可以让 json-lift 自动将 id 读取为 Long ?

0 投票
0 回答
300 浏览

json - 将 json-lift 与 play 一起使用,省略的 Option 字段会破坏反序列化

我的理解是 json-lift 支持开箱即用的选项字段。

这是一个示例对象定义:

然后我net.liftweb.json.Serialization.read[Topic](jsonString)用来读取对象

如果传入 JSON 中的所有字段都存在,则反序列化工作正常。但是,如果我省略选项字段:

对象返回时所有字段都设置为空。

另一个有趣的事实:只有当代码位于 play 应用的 app 目录下时才会出现问题。如果我们将它放在其他地方并作为罐子包含在内,它就可以正常工作。

有人认为这是 Scala 2.8 的问题(我们使用的是 Play 1.2.3 / Akka 1.0,并且限制使用最新的 Scala)。

任何帮助,将不胜感激...

0 投票
1 回答
632 浏览

scala - 当 json 是可变的时,使用 scala lift-json 提取案例类

我正在尝试提取以下 json 值

我有以下案例类

但是对于lift-json,只有带有多个项目的JSON示例似乎有效,单个项目会抛出。

有针对这个的解决方法吗?

0 投票
2 回答
718 浏览

json - 如何从映射器持久类提供 Lift/Scala Json Web 服务

好的,首先我是在这里发布问题的新手,所以请放轻松。

我觉得我已经浏览了互联网来解决这个问题,而且我肯定会很慢,因为我无法做到这一点 - 我知道这应该很简单。

我有一堂课:

该对象有一些辅助方法和其他一些我拼凑起来的东西,试图让它工作:

我的休息服务正在做基本的事情,并与此相匹配:

所以令我高兴的是,它起作用了,我得到了匹配..并返回 Json,问题是:假设我在数据库中有 3 行具有生产类型:a,如果我用 'a' 调用服务,它会返回:

所以它正在返回,它只是没有序列化任何数据......我已经尝试重载 unapply 方法并试图弄清楚案例类是否可以帮助我 - 但它并没有点击我虚弱的头脑。有什么帮助吗?