私はオブジェクトマッパーでfasterxml JSONを使用し、以下の私のコードでいます:Spring Hibernateプロジェクトのjson jacksonの "handler":{}、 "hibernateLazyInitializer":{}を無視する方法は?
ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
try {
String jsonInString = mapper.writeValueAsString(myClassObjectHere);
return new ResponseEntity<String>(jsonInString, HttpStatus.OK);
} catch (JsonProcessingException e) {
e.printStackTrace();
return new ResponseEntity<String>(HttpStatus.INTERNAL_SERVER_ERROR);
}
私が実装しているとのコードを使用しています方法、私は、所望の出力を得るが、JSONは、などの特定のJSONオブジェクトに2ランダムな奇妙な値を持っています次の:
"listing": {
"listingId": 1,
"name": "Business",
"handler": {},
"hibernateLazyInitializer": {}
},
"handler": {},
"hibernateLazyInitializer": {}
},
どのように出力されたJSONから"handler": {}, "hibernateLazyInitializer": {}
値を無視するobjectmappper設定するには?
私は下のソリューションを試してみました:
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
しかし、そのは動作していないと、出力はまだ私は上記の投稿と同じです。 また、私はこれらのハンドラとjsonのhibernateLazyInitializerを、@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
のクラスに注釈を付けることで無視できることを知っていますが、json jacksonオブジェクトマッパーをグローバルに設定する手段はありません。
は、代わりにobjectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES、偽)のDeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIESを使用してみてください。 – Boldbayar
どのバージョンのjacksonを使用していますか?特集はジャクソン1.9バージョン以下のため – Boldbayar
は、私はこのエラーを取得します –