2012-02-13 14 views
1

私はJACKSON 1.6.3バージョンを使用しています。私は自分自身への参照を持つ1つのクラスを持っており、JACKSONシリアライザは "循環参照"についての不満で失敗しています。 このクラスのシリアル化を無効にしたいと思います。これはサードパーティのクラスであり、注釈を追加することはできません。このタイプのオブジェクトをシリアル化するのを無効にする方法があるのだろうかと思います。シリアライザがオブジェクト全体を無視するなら、私は大丈夫です。Jackson JSONライブラリ特定の型のシリアル化を無効にする方法

+0

でそれを登録し、あなたはプロパティにJsonIgnore' @ '試してみましたか? –

+0

これはサードパーティのクラスなので、@ JsonIgmoreを使用することはできません。このオブジェクトは、自分のコードでHashMapから参照されています。 – Shamik

答えて

2

私はタイプのカスタムJsonSerializer<T>を作成することで、問題を修正し、ObjectMapper

mapper = new ObjectMapper(); 
CustomSerializerFactory factory = new CustomSerializerFactory(); 
factory.addSpecificMapping(<Type to be handled>, <Custom Serializer>); 
mapper.setSerializerFactory(factory); 
関連する問題