我们正在使用 Play Framework 2.0.3 设置一个稍微复杂的项目。
我们需要访问几个数据库(预先存在的),并希望使用框架内置设施(即 EBean)来完成它。
我们尝试在“models”包中创建所有模型类,然后将每个类及其 FQN 映射到 application.conf 中相应的 EBean 属性:
ebean.firstDB="models.ClassA,models.ClassB,models.ClassC"
ebean.secondDB="models.ClassD"
ebean.thirdDB="models.ClassE,models.ClassF"
这似乎不起作用:
PersistenceException: Error with [models.SomeClass] It has not been enhanced but it's superClass [class play.db.ebean.Model] is? (You are not allowed to mix enhancement in a single inheritance hierarchy) marker[play.db.ebean.Model] className[models.SomeClass]
我们查了又查,配置没问题!
然后,我们尝试为每个数据库模型类使用不同的 Java 包,并在 application.conf 中相应地映射它们:
ebean.firstDB = "packageA.*"
ebean.secondDB = "packageB.*"
ebean.thirdDB = "packageC.*"
这在从数据库中读取信息时可以正常工作,但是当您尝试保存/更新对象时,我们会得到:
PersistenceException: The default EbeanServer has not been defined? This is normally set via the ebean.datasource.default property. Otherwise it should be registered programatically via registerServer()
有任何想法吗?
谢谢!里卡多