我有一个如下对象:
class User {
static mapWith="mongo"
static embedded = [ 'profiles' ]
String email
List<Profile> profiles;
}
interface Profile {
}
class Profile1 implements Profile {
}
class Profile2 implements Profile {
}
如果我将具体类 Profile1 或 Profile2 添加到 User 对象并将其保存到数据库中,则在从 MongoDB 中读取该对象时会引发异常。我没有看到任何信息被保存到数据库中以确定在这种情况下应该实例化哪种类型的对象。关于如何处理这种情况的文档完全为零。其他框架有处理这个问题的机制,所以要么 Grails MongoDB 被严重破坏,要么这只是没有记录(再次)。那么我该如何解决呢?
例外情况如下:
| Error 2013-06-12 18:48:00,390 [http-bio-8080-exec-5] ERROR errors.GrailsExceptionResolver - InstantiationException occurred when processing request: [POST] /mpa/user/authenticate -parameters:
email: carhubb@gmail.com
password: ***
com.mycompany.security.Profile. Stacktrace follows:
Message: com.mycompany.security.Profile
Line | Method
->> 342 | newInstance0 in java.lang.Class
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 310 | newInstance in ''