使用 PostgreSQL 播放框架 scala 出现异常

Play framework scala using PostgreSQL got exception

我有以下代码。我正在使用 Play 2.3.7、Scala 2.11.4、PostgreSQL 9.4.1。

执行以下代码时出错:-

   val dburl: Option[String] = current.configuration.getString("db.default.url")
   val driver: Option[String] = current.configuration.getString("db.default.driver")
   val db = Database.forURL(dburl.get, driver.get)
   val session = db.createSession()

 def newPlayer(email: String, nickname: String): Int = {
    val now : java.sql.Timestamp = new java.sql.Timestamp(compat.Platform.currentTime)

    // following line throws exception  
  db.withSession {implicit session: Session => persons.map(p => (p.nickname, p.email, p.status, p.gender, p.created, p.updated)) += (nickname, email, "active", "n", now, now)}
  }

执行异常

[PSQLException: FATAL: 角色 "org.postgresql.Driver" 不存在]

我认为我的 url 驱动程序没问题。否则我会在早期的代码中出错。请告诉我如何修复它。

我想这是您尝试从以下数据库创建数据库连接的方法:

def forURL(url:String, user:String = null, password:String = null, prop: Properties = null, driver:String = null): DatabaseDef

如您所见,它接受 url 作为第一个参数,但第二个参数是用户(在 postgresql 中也称为角色),您正在插入数据库驱动程序。它接受带有默认值(null)的其余参数。您需要像这样提供其余部分:

val db = Database.forURL(dburl.get, <add username>, <add password>, new Properties, driver.get)