Play Framework 2.1 プロジェクトと MongoDB データベースで Morphia を使用していますが、一部のデータの取得に問題があります。
コレクションに @Entity が格納されているクラス A があります。しかし、そのクラス A には @Embedded List プロパティがあり、このクラス B は抽象的で、複数の実装があります。
しかし、このクラス B には @Embedded ClassC プロパティもあり、このクラス C も抽象的であり、複数の実装を持つこともできます。
この構造が「そのまま」使用可能で、Morphia がそれを処理できるとは思いません。私のデータベースでは、オブジェクトは正しく保存されており、エラーはありません。
{
"_id" : ObjectId("5163c9131a887c8e5aea8d5f"),
"className" : "package.to.ClassA",
"list" : [
{
"propClassB" : [
{
"className" : "package.to.an.ImplementationOfClassB",
"propClassC" : {
"className" : "package.to.an.ImplementationOfClassC"
}
}
]
}
]
}
クラス A は @Entity とマークされ、
クラス B は @Embedded とマークされます (そして @Polymorphic ですが、使用されていないと思います)
クラス C は @Embedded とマークされます (そして @Polymorphic も)
私は何か間違っていますか?全てに感謝 !