java - 玩框架 2.1.x 和 EbeanServer

标签 java scala playframework-2.1 ebean

我正在努力运行我的第一个 Play! 2.1.x 应用程序,我总是收到此错误(这是来自运行 test 案例):

Test models.TestModel.testCreate failed: 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()

我已经阅读了官方手册,许多 SO 问题,甚至一些博客,但我仍然不明白为什么我一直得到这个。

注意:我从 this SO question 指定了 test.conf 文件, 在 Build.scala 中。

test.conf 的内容如下:

include "application.conf"

application.version=${application.major}.${application.minor}.${application.revision}-TEST

db.default.driver=org.h2.Driver
db.default.jndiName=DefaultDS
db.default.url="jdbc:h2:mem:play;MODE=PostgreSQL;DB_CLOSE_DELAY=-1"
db.default.user=sa
db.default.password=""

ebean.default="models.*"
ebean.datasource.factory=jndi
ebean.datasource.default=DefaultDS

注意 application.conf 中也指定了相同的键,但具有“prod”值。

我错过了什么? 谢谢!

** 编辑 **

测试用例非常简单。我正在使用一个基类,按原样从 this blog 复制粘贴:

public class TestSomeModel extends BaseModelTest {
    @Test
    public void myModelCreate() {
        SomeModel model = new SomeModel();
        model.someStringAttribute = "some value";
    
        assertThat(model.id).isNull();
    
        model.save();  // <--- this is the line that gives the error
        
        assertThat(model.id).isPositive();
    }
}

...如果有人坚持要看模型类....

@Entity
public class SomeModel extends Model {
    @Id
    public Long id;

    public String someStringAttribute;
}

最佳答案

在模型前添加@Entity

@实体 公共(public)类 SomeModel 扩展模型 {

关于java - 玩框架 2.1.x 和 EbeanServer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18424659/

相关文章:

scala - Play2 和 Scala,我应该如何配置集成测试以使用正确的数据库运行

java - ImageIcon 不会更新具有相同 URL 的新图像

java - 如何在一个Eclipse项目中使用多个GitHub项目?

java - OffsetDateTime 时间正在改变时区偏移

scala - Scala 中带有 var 关键字的可变 Map 的问题

scala - 成功和失败函数参数 Scala 模式

scala - scala/akka/play中的简单Websocket

scala - 如何让 Intellij Idea 调试 Play 2.1 应用程序的源代码文件,而不是仅调试项目定义

java - RecyclerView未加载数据的原因

java - 全屏时 BottomNavigationView 跳起来留下空白