Настройка соединения Postgresql с Play 2 и Slick-Play

Я учусь создавать приложение с помощью Scala и Play 2 Framemork. Я создал новый проект с помощью инструмента-активатора на основе текущего шаблона "play-scala-intro".

В шаблоне есть образец приложения, использующего Play-Slick 1.0 для управления зависимостями, и он настроен с использованием базы данных H2, которая работала без проблем.

Когда я попытался перейти на базу данных Postgres, у меня возникли проблемы. Я получаю сообщение об ошибке 500, говорящее мне:

«Невозможно подключиться к базе данных [по умолчанию]».

Исключение в трассировке стека:

«Настроенный драйвер Slick org.postgresql.Driver не является экземпляром запрошенного профиля slick.profile.BasicProfile»

Итак ... Что я уже сделал:

Я добавил в свой файл build.sbt зависимость:

"org.postgresql"% "postgresql"% "9.4-1201-jdbc41"

В моем файле конфигурации (application.conf) соединение с БД настроено как:

slick.dbs.default.driver = org.postgresql.Driver slick.dbs.default.db.url = "jdbc: postgresql: // localhost: 5432 / hello_play" slick.dbs.default.db.user = "postgres" пятно .dbs.default.db.password = ""

PS: Я тоже пробовал с slick.dbs.default.driver = "org.postgresql.Driver" ...

PS2: мой пароль БД пуст. Без проблем подключаюсь к PgAdmin


person damorais    schedule 10.06.2015    source источник


Ответы (1)


slick.dbs.default.driver должен быть отличным драйвером, а не драйвером JDBC. Конфигурация вашей базы данных должна выглядеть примерно так:

slick.dbs.default.driver="slick.driver.PostgresDriver$"
slick.dbs.default.db.driver="org.postgresql.Driver"
slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/hello_play"
slick.dbs.default.db.user="postgres"
slick.dbs.default.db.password=""
person Roman    schedule 10.06.2015