2012-03-19 10 views
3

Play 2.0 Frameworkを使いこなすために、私はPlay 2.0 introduction tutorialに従っています。 Unforunatly、私はEbeanの永続性を働かせることができません。私Task.javaは、次のようになります。Ebeanの永続性がPlay 2.0で機能しない

package models; 

import java.util.*; 

import play.db.*; 
import play.data.validation.Constraints.*; 

import javax.persistence.*; 

@Entity 
public class Task { 

    @Id 
    public Long id; 

    @Required 
    public String label; 

    public static List<Task> all() { 
     return find.all(); 
    } 

    public static void create(Task task) { 
     task.save(); 
    } 

    public static void delete(Long id) { 
     find.ref(id).delete(); 
    } 

} 

しかしapplicatonを実行している上、findsaveは解決することはできません。私はモジュールをインポートすることを忘れたと思うが、それがどれであるかわからない。

答えて

2

ダンW.は、すでに述べたように、あなたはModelクラスを拡張する必要があります:

@Entity 
public class Task extends Model { 
    .... 
} 

あなたはまた、次の静的Methodeのを追加する必要があります。

public static Finder<Long,Task> find = new Finder(
    Long.class, Task.class 
); 

また、あなたは、以下の行を追加したことを確認してくださいapplication.confファイルにコピーして、データベースを有効にしてください。

db.default.driver=org.h2.Driver 
db.default.url="jdbc:h2:mem:play" 
ebean.default="models.*" 
7

私はあなたがModelクラスを拡張する必要があると信じている。

@Entity 
public class Task extends Model { 
    .... 
} 

これが役に立ちます。

+0

Oh yeah I'm s tupid ...しかし、それはどちらもうまくいかないようです。 「モデル」が見つからないというエラーが表示されます...私は混乱しています! – wowpatrick

+0

@wowpatrick play.db.ebean.Modelをインポートして、 "ebean.default =" models。* "" application.confの " - "行も有効にしてください。 –

+0

私は間違って 'play.db. *'に 'play.db.ebean。* 'も含めると思っていました。しかし、それでもやはりオリジナルのエラーが発生します... – wowpatrick

関連する問題