問題タブ [json4s]

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 に答える
1299 参照

scala - json4sを使用してトレイトミックスインでケースクラスをシリアライズする

json4sGameを使用してシリアル化/逆シリアル化するのに問題のないケース クラスがあります。

私のアプリでは、ORM としてmapperdaoを使用しています。私が持っていないサロゲートIDGameを使用しているため、そのコンストラクターの一部を持っていません。id

ただし、mapperdao が DB からエンティティを返すとき、トレイトを使用して永続化されたオブジェクトの ID を提供します。

Game with SurrogateIntId

特性のコードは

シリアル化しようとするとGame with SurrogateIntId、空の括弧が返されます。これは、json4s が添付された特性を処理する方法を知らないためだと思います。

gameidT with SurrogateIntIdすべてのドメイン オブジェクトに対してこれらを使用するのとほぼ同じくらい重要なことに、そのプロパティに追加されたものだけをシリアル化する方法が必要です。

誰でも私を助けることができますか?

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

scala - json4s で under_score 形式と camelCase 形式を選択する

アンダースコア付きのjsonをケースクラスのcamelCaseフィールドにマップするにはどうすればよいですか?

私が得るエラー:

someField に使用できる値がありません java.lang.String に変換できる値が見つかりませんでした

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

json - for 式を使用して null の可能性がある JSON 値からオプションを抽出する

一部の値が null になる可能性がある JSON ドキュメントがあります。json4s の for 式を使用して、何も生成しない代わりに、どのように None を生成できますか?

フィールドFormattedIDまたはのいずれかの値が である場合、以下PlanEstimateは生成されませんnull

例えば:

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

scala - json4s でポリモーフィック型を抽出する

Scala コードで JSON オブジェクトを操作するために json4s を使用しています。JSON データを内部表現に変換したいと考えています。次の学習テストは、私の問題を示しています。

動物のリストを持つ JSON オブジェクトがあるとします。Animalは抽象型であるため、インスタンス化できません。Dog代わりに、JSON 構造を解析して、またはBirdオブジェクトのいずれかを返したいと考えています。それらは異なる署名を持っています:

それらの署名は異なるため、JSON オブジェクトにクラス タグがなくても識別できます。(正確には、私が受け取った JSON 構造はそれらのタグを提供しません)。

Animal オブジェクトのリストをシリアル化しようとしました (コードを参照)。結果は次のとおりです。Ser: {"animals":[{"jsonClass":"Dog","name":"pluto"},{"jsonClass":"Bird","canFly":true}]}

ご覧のとおり、シリアル化するときに、json4s は class-tag を追加しjsonClassます。

このようなタグを提供しない JSON オブジェクトをデシリアライズするにはどうすればよいですか? 拡張することでこれを達成することは可能TypeHintsですか?

同様の質問も見つけました: [json4s]:Extracting Array of different objects with a solution that uses generics instead of subclassing. ただし、私が正しく理解していれば、このソリューションでは単純に json オブジェクトを渡して内部表現を持つことはできません。代わりに、そうでないフォームを選択する必要がありますNone(継承階層で可能なすべてのタイプをチェックしながら)。JSON 構造のさまざまな深さに複数のポリモーフィック クラスがあるため、これは少し面倒です。

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

json - json4s は mixin 特性を持つケース クラスをシリアル化できません

これが機能しないのはなぜですか?

これは空の JSON オブジェクトを出力します

「with Greet」を削除すると、(正しい)結果が得られます。

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

json - json4sを使用してscalaで再帰的なデータ構造を抽出する際の問題

キーごとに任意の数のマップの map -> map -> ... -> int で構成される json 形式があります。キーは常に文字列で、リーフ タイプは常に int です。マップ構造の深さは、マップ内のキーごとに異なります。たとえば、キー「A」は Map[String, Int] 型で、キー「B」は Map[String, Map[String, Int]] 型です。この形式を Map[String, Any] として正常に解析できることはわかっていますが、これらの構造を後でコードでマージしやすくするために型を保持しようとしています。

json4s 抽出でエラーをスローしないように、ネストされた構造を定義できないようです。問題が構造定義にあるのか、それとも json 抽出を正しく行っていないのか、よくわかりません。

ここにコードがあります

いつも出てくるエラーはこちら

NestedMap を拡張する別の値を追加する必要がありますか? 私はこれについて完全に間違っていますか?どんな助けでも大歓迎です。