2017-03-19 93 views
0

我開始在我的播放應用程序中使用postgresql,並能夠連接到播放的默認數據庫並執行一些選擇和更新。但是,當我轉而使用postgresql時,總會出現錯誤。請給我一些建議。謝謝。 我已經在/ lib中添加了postgresql-42.0.0.jar。播放框架 - 無法連接到postgresql

錯誤在這行: 「u1.save();」: [的PersistenceException:錯誤獲取序列NEXTVAL]

application.conf: 
    db.default.driver=org.postgresql.Driver 
    db.default.url="postgres://postgres:[email protected]/testing" 
    #db.default.url="postgres://user:[email protected]/dataBaseName" 
    # Ebean configuration 
    ebean.default="models.*" 

    build.sbt: 
    libraryDependencies ++= Seq(
    "org.postgresql" % "postgresql" % "42.0.0 JDBC 42", 
    javaJdbc, 
    javaEbean, 
    cache 
) 

    Application.java: 

public class Application extends Controller { 
    public static Result index() { 
     User u1 = new User(); 
     User u2 = new User(); 
     u1.name = "Mm"; 
     u2.name = "Nn"; 
     u1.save(); 
     u2.save(); 
     return ok("saved"); 
    } 
    public static Result allUser() { 
     List<User> users = User.findAll(); 
     return ok(findalluser.render(users)); 
    } 
} 
+1

有什麼實際的錯誤?它是否實際連接到數據庫? – Mikesname

回答

0

如果你的錯誤真的是[的PersistenceException:錯誤獲取序列NEXTVAL]這意味着,你沒有正確創建你的序列生成器,它負責自動增加你的ID。

在你的模型,你得批註主鍵與這個註解你的類:

@Entity 
public class User extends Model { 
    @Id //makes it a primary key 
    @GeneratedValue //creates the sequence generator 
    public Long id; 
} 
0

我覺得應該有端口號:

db.default.url="postgres://postgres:[email protected]:5432/testing"