3

初めての Play! の実行に苦労しています。2.1.x アプリで、常にこのエラーが発生します (これはtestケースの実行によるものです):

models.TestModel.testCreate のテストに失敗しました: デフォルトの EbeanServer が定義されていませんか? これは通常、ebean.datasource.default プロパティを介して設定されます。それ以外の場合は、 registerServer() を介してプログラムで登録する必要があります

私は公式マニュアル、多くの SO の質問、そしていくつかのブログを読みましたが、なぜ私がこれを取得し続けるのかまだわかりません.

注:この SO questiontest.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」です。

私は何が欠けていますか?ありがとう!

** 編集 **

テストケースは非常に簡単です。このブログからそのままコピーして貼り付けた基本クラスを使用しています:

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;
}
4

2 に答える 2

3

モデルの前に @Entity を追加

@Entity public class SomeModel extends Model {

于 2013-08-28T03:31:49.030 に答える