問題タブ [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 - Option[Set[A]] にマップされるコレクションをデシリアライズしない Salat

scala-salat Google グループでこの質問をしましたが、数日間応答がなかったため、ここで試してみました。

でラップされたコレクションを持つケースクラスがありOptionます。

ドキュメントはMongoに問題なく保存されます。ただし、findOne( の有無にかかわらずSalatDAO) を使用してこれを取得しようとすると、アドレス フィールドには Address ケース クラスではなく、アドレスを表す JSON テキストが含まれます。

その結果、Lift-JSON はケース クラス内のすべてのフィールドをスキップしますOption[Collection[A]]。を削除して を使用するOptionaddresses=Set[Address]()、機能します。ただし、JSON にデータのない空のセットが作成され、消費者がエントリを削除したかどうかを更新時に確認する方法がありません。またはSet、消費者がこのフィールドを送信しなかったために空になっています。元のリクエスト。

を使用Optionすると、フィールドが に設定されます。つまり、フィールドNoneが空になったり変更されたりすることを心配する必要はありません。

どんな助けでも大歓迎です。

0 投票する
1 に答える
1352 参照

scala - Lift-jsonは、「type」フィールドを持つjsonをケースクラスに抽出します

lift-jsonを使用してJSONをケースクラスに抽出しようとしています。これが私のケースクラスです:

これがjsonです

typeフィールドをインスタンスに抽出するにはどうすればよいPersonですか?

0 投票する
1 に答える
2135 参照

json - 構成されたクラスでのポリモーフィック Lift-json デシリアライゼーション

GeoJson情報を格納するために内部に座標クラスを使用して、Lift-Jsonを使用してjsonオブジェクトをscalaクラスに自動的に逆シリアル化しようとしています。

次のようなjson文字列をデシリアライズしたい:

Geometry フィールドに適切な LineString ランタイム クラスを含む Request ケース クラスに変換します。TypeHint を使用する必要があると思いますが、どうすればよいでしょうか。これは正しいアプローチですか、それとも 3 つの異なるリクエスト (RequestPoint、RequestLineString、RequestPolygon) を作成する必要がありますか? これは逆シリアル化する Scala コードです。

0 投票する
2 に答える
1292 参照

mongodb - Casbahを使用してlift-jsonJValueをMongoDBObjectに変換しますか?

lift-jsonのJValueで解析されたJSONドキュメントをCasbahMongoDBObjectに変換しようとしています-これを行う方法はありますか?

0 投票する
4 に答える
15750 参照

string - LiftでJSON JString値を通常の文字列に変換する方法は?

内部に文字列を保持する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 - Using json-lift with play, omitted Option fields break deserialization

My understanding is that json-lift supports Option fields out of the box.

Here is a sample object definition:

I then use net.liftweb.json.Serialization.read[Topic](jsonString) to read the object

If all fields in the incoming JSON are present, deserialization works fine. However, if I omit an Option field:

object comes back with all fields set to null.

Another interesting fact: this is only a problem when the code is under app directory of the play app. If we put it elsewhere and include as a jar it works just fine.

There is an opinion that this is a problem with Scala 2.8 (we're on Play 1.2.3 / Akka 1.0 and are limited from using latest Scala).

Any help would be appreciated...

0 投票する
1 に答える
632 参照

scala - jsonが変数の場合、scala lift-jsonでケースクラスを抽出する

次のjson値を抽出しようとしています

私は次のケースクラスを持っています

しかし、lift-json を使用すると、複数のアイテムを含む JSON の例のみが機能するように見え、単一のアイテムがスローされます。

これに対する解決策はありますか?

0 投票する
2 に答える
718 参照

json - マッパー永続クラスから Lift/Scala Json Web サービスを提供する方法

わかりました。まず、ここに質問を投稿するのは初めてなので、気楽に行ってください。

私はこれを理解するためにインターウェブを罵倒したように感じます.私はそれを正しく理解できないので、確かに遅いに違いありません-これは単純であるべきだと知っています.

私はクラスを持っています:

オブジェクトには、いくつかのヘルパー メソッドと、これを機能させるために私がまとめたその他のものがいくつかあります。

私の休息サービスは基本的なことを行っており、これと一致しています:

喜んで、それはうまくいきました、私はそれを一致させました..そしてJsonを返します、問題は次のとおりです: DBにproducetype: aの3つの行があるとしましょう。

だから戻ってきて、データをシリアライズしていないだけです... unapplyメソッドをオーバーロードして、ケースクラスが私を助けることができるかどうかを調べようとしましたが、私の弱い心をクリックしていません. 何か助けはありますか?