問題タブ [jackson-modules]

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

json - カスタムでシリアル化された Bean の json-schema の生成

FasterXML のjson-schema generatorを使用して POJO から json-schema を構築しています。私のPOJOがカスタムjsonシリアル化を使用するまで、すべてがうまくいきます。私の場合、タイプ org.joda.Money のフィールドがあり、対応する joda-module でシリアル化します。Beanは次のようにシリアル化されています

しかし、そのスキーマは次のようになります。

生成されたスキーマをカスタマイズする方法はありますか?

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

java - Jackson に Google Guice インジェクターを使用してインスタンスを作成させるにはどうすればよいですか?

DI には Google Guice (主にコンストラクター インジェクションを使用) を使用し、JSON との間のオブジェクトのシリアル化には Jackson を使用します。そのため、Guice モジュールを使用してオブジェクト グラフを構築します。

Jackson に事前構築済みの Guice インジェクターを使用するように提供/指示するにはどうすればよいですか? それとも、私たちが提供する Guice モジュールに基づく独自のインジェクターですか? 私の好みは、インジェクターを提供することです。これは、実行したい環境/構成に基づいて使用されるモジュールを制御する手段が既にあるためです。

単体テストは次のとおりです。

実行時にこの例外が生成されcom.fasterxml.jackson.databind.JsonMappingException、次のメッセージが表示されます: タイプ [単純なタイプ、クラスの構築] に適したコンストラクターが見つかりません: JSON オブジェクトからインスタンス化できません (デフォルトのコンストラクターまたはクリエーターが見つからないか、タイプ情報を追加/有効にする必要がありますか?)

少しグーグルで調べた後、jackson-module-guiceプロジェクトに出くわしましたが、必要なことを達成する方法について、必要なものではないように見えます。

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

java - Jackson - ブラケット、カンマ、= なしでデータを抽出しますか?

Jackson についてはよくわかりません。Python から Java にデータを共有する必要があったため、Jackson を使用しているだけです。とにかく私のコードはとてもシンプルです

これは私が得ているものです:

data{}や=などを出力せずにデータを保持するある種のデータ構造を取得するために使用できるようにしたいだけです.これを行う方法はありますか?

ノードのグループがあり、タグごとに 1 つのノード (ADP など) があります。私は ADP ノードに 0.830 を与えることができるようにしたい... 文字列でこれを行うことができますが、文字列の本当に面倒な分割が必要になります。これを行う簡単な方法があるに違いないと思いますか?

編集:

読み込んでいるjsonファイルのデータは次のようになります

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

jackson - Jackson afterburner モジュールを使用するように RESTEasy を構成する方法

ペイロードが大きいと、JSON が POJO に変換されるときに多くの時間がかかっていることがわかります。内部的には Jackson を使用しています。Afterburner モジュールを使用するように RESTEasy を構成して、パフォーマンスを向上させる方法があるかどうか疑問に思っていました。

0 投票する
3 に答える
8405 参照

java - Android で jackson-dataformat-xml を使用する

Androidでjackson-dataformat-xmlを使用するのに苦労しています

Oracle jreで正常に動作する非常に基本的なコードがいくつかあります

最初に、gradleに適合した公式ドキュメントを試しました(正しく行われたかどうかはわかりません):

結果:コアライブラリをアプリケーションにバンドルすることについて、gradle がビルド時間に失敗する

ショーンの答えに従おうとする2回目の試み (基本的に、彼はcorelibsをプレフィックス名で再パッケージ化し、jackson-dataformat-xmlを再構築してプレフィックス名を使用します)

そして、重複でビルド時間が失敗しました

そう追加:

除外を追加すると、ビルドおよびデプロイされますが、スタックダンプの下でランタイムに失敗します (私の理解では、クラスパスに追加されていても、SAX プロバイダーを見つけることができません)。

#1 または #2 のいずれかで前進する適切な方法は何ですか?

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

json - Jackson JDK8 のデータ型とパラメーター名のモジュールが一緒に再生されない

Jackson JDK8 Data Type モジュールは、JDK8 を要求し、JDK8 に関する特定のユースケースを解決することを考えると、少し驚くべきように、パラメータ名モジュールを時々無視するようです。

ここでの問題は、パラメーター名を明示的に指定せずに JSON デシリアライゼーションを機能させる方法を見つけることができなかったことです (これは、パラメーター名モジュールがすべてであると想定されているものです)。また、コンテナー オブジェクト コンストラクターで JDK8 固有の型 ( Optional<T>) を渡そうとした場合にのみ、この動作が発生します (つまり、通常、これは機能し、私はそれをテストしました)。コードは javac パラメータでコンパイルされます-parameters

問題は、どのようにして Parameter Names モジュールを活用できるようにするか (つまり、コンストラクターで注釈 + 値を指定する必要がなく、引数名でプロパティ名を把握できるようにすること) です。

私は間違っているかもしれませんし、ボンネットの下のコードを見ていないので、見逃しているものがあれば教えてください.

この簡単な例を考えてみましょう。

バージョン スタック (この記事の執筆時点でのすべての最新バージョン):

容器:

シリアライゼーション:

逆シリアル化:

testSer()このようなコンテナーで実行すると、次の結果が得られます。

testDeser()このような入力で実行する

も機能し、期待される結果 (s1s2Optional.emptyあり、map空である) が生成されますが、コンテナー コンストラクターが上記のように定義されている場合に限ります。次の組み合わせでは動作しませんでした: 1
)

2)

本来、どちらも機能するはずですが、そうではありません。どちらのアプローチでも、次のスタックトレースが生成されます。

ここで何が欠けていますか?

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

java - jsonNodes のリストを単一の jsonNode に変換する方法

Jackson ライブラリを使用しています。jsonNode のラッパーに過ぎない Java オブジェクトが多数あります。したがって、これらの jsonNodes のリストを単一の jsonNode に変換したいと考えています。どうやってやるの。私はこれを試しました

これは機能していません。他の方法はありますか?

0 投票する
3 に答える
8461 参照

maven - jackson-databind バージョンの不一致によるシリアル化エラー?

次のエラーが発生しています

jackson-datatype-joda のどのバージョンが利用可能かを確認しました。Maven はすべてのバージョンの不一致を除外したようです。

これによりシリアル化エラーが発生する可能性がある他の理由はありますか?

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

java - Jackson を使用して逆シリアル化するときに、命名戦略を緩めるにはどうすればよいですか?

古い Codehaus モジュールの代わりに、Jackson の FasterXML (2.6.3) バージョンを使用するように JSON モジュールをアップグレードしようとしています。アップグレード中に、Codehaus の代わりに FasterXML を使用すると命名戦略が異なることに気付きました。

命名戦略に関しては、Codehaus の方が柔軟でした。以下のテストは、私が FasterXML で直面している問題を強調しています。ObjectMapperCodehaus と同じ戦略に従うように を構成するにはどうすればよいですか?

JSONProperty何百もの注釈があるため、注釈を変更することはできません。命名戦略に関して、アップグレードに後方互換性を持たせたいと思います。