2015-08-05 8 views
2

Я получаю следующее сообщение об ошибке в структуре нормализованной модели данных в MongoDB:Resolve DBRef в Json

org.bson.codecs.configuration.CodecConfigurationException: Can't find a codec for class com.mongodb.DBRef 

Это вызвано этой линии:

System.out.println(document.toJson()); 

В частности, toJson() часть. У меня есть объект DBRef в моем документе, поэтому я могу ссылаться на Документ из другой коллекции. Встроенная структура документа не является вариантом. Итак, как я могу это исправить?

ответ

0

Вам необходимо импортировать кодек DBRef для его печати, если вы хотите его в стиле документа json, вам нужно написать собственный Codec для DBRef и добавить его к кодеке, который вы даете toJson().

например.

CodecRegistry codecRegistry = CodecRegistries.fromRegistries(MongoClient.getDefaultCodecRegistry()); 
------- 
final DocumentCodec codec = new DocumentCodec(codecRegistry, new BsonTypeClassMap()); 
------- 
System.out.println(document.toJson(codec));