2013-12-20 1 views
0

Я пытаюсь создать приложение с помощью Play Framework 2.2 и Scala.Строка соединения JDBC, не работающая с MySQL на платформе Play Framework

Я не очень знаком с средами Java, поэтому не знаю точно, что происходит.

Чтобы заставить его работать с MySql, я должен настроить свой conf/application.conf так:

db.default.driver=com.mysql.jdbc.Driver 
db.default.url="jdbc:mysql://localhost:3306/sakila" 
db.default.user=root 
db.default.password="mypass" 

Все кажется мне правильным, но когда я пытаюсь получить доступ к нему, я получаю это:

Cannot connect to database [default] 

Почему? Эта информация правильная! База данных можно найти на localhost: 3306/sakila.

Что я делаю неправильно?

EDIT: Вот мой стек. Кажется, что отсутствует файл .jar-соединителя mysql или что-то в этом роде. Что мне делать?

[успех] Составитель в 734ms [ошибка] c.j.b.h.AbstractConnectionHook - Не удалось получить начальное соединение SLE eping для 0ms и попробовать еще раз. Попытки слева: 0. Исключение: null.Message: не Нет SUI драйвер таблицы найдено для MySQL: // локальный: 3306/мир [ошибка] применение -

! @ 6gjp5p29b - Внутренняя ошибка сервера, для (GET) [/] ->

play.api.Configuration$$anon$1: Configuration error[Cannot connect to database [ 
default]] 
     at play.api.Configuration$.play$api$Configuration$$configError(Configura 
tion.scala:92) ~[play_2.10.jar:2.2.1] 
     at play.api.Configuration.reportError(Configuration.scala:570) ~[play_2. 
10.jar:2.2.1] 
     at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:252) ~[pla 
y-jdbc_2.10.jar:2.2.1] 
     at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:243) ~[pla 
y-jdbc_2.10.jar:2.2.1] 
     at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike 
.scala:244) ~[scala-library.jar:na] 
     at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike 
.scala:244) ~[scala-library.jar:na] 
Caused by: java.sql.SQLException: No suitable driver found for mysql://localhost 
:3306/world 
     at java.sql.DriverManager.getConnection(Unknown Source) ~[na:1.7.0_07] 
     at java.sql.DriverManager.getConnection(Unknown Source) ~[na:1.7.0_07] 
     at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:363) 
~[bonecp.jar:na] 
     at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:416) ~[bonecp.jar:na] 
     at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.jav 
a:120) ~[bonecp.jar:na] 
     at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:245) ~[pla 
y-jdbc_2.10.jar:2.2.1] 
[error] application - 

! @6gjp5p29b - Internal server error, for (GET) [/] -> 

play.api.Configuration$$anon$1: Configuration error[Cannot connect to database [ 
default]] 
     at play.api.Configuration$.play$api$Configuration$$configError(Configura 
tion.scala:92) ~[play_2.10.jar:2.2.1] 
     at play.api.Configuration.reportError(Configuration.scala:570) ~[play_2. 
10.jar:2.2.1] 
     at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:252) ~[pla 
y-jdbc_2.10.jar:2.2.1] 
     at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:243) ~[pla 
y-jdbc_2.10.jar:2.2.1] 
     at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike 
.scala:244) ~[scala-library.jar:na] 
     at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike 
.scala:244) ~[scala-library.jar:na] 
Caused by: java.sql.SQLException: No suitable driver found for mysql://localhost 
:3306/world 
     at java.sql.DriverManager.getConnection(Unknown Source) ~[na:1.7.0_07] 
     at java.sql.DriverManager.getConnection(Unknown Source) ~[na:1.7.0_07] 
     at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:363) 
~[bonecp.jar:na] 
     at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:416) ~[bonecp.jar:na] 
     at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.jav 
a:120) ~[bonecp.jar:na] 
     at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:245) ~[pla 
y-jdbc_2.10.jar:2.2.1] 
+1

Включили ли вы зависимость jdbc? – mantithetical

+0

Да, я сделал это. –

+0

Вы добавили зависимость для драйвера MySQL? – estmatic

ответ

0

ОК, я не знаю, что происходит.

Я положил это, и он начал работать:

db.default.url="jdbc:mysql://localhost:3306/world" 
db.default.driver="com.mysql.jdbc.Driver" 
db.default.user="root" 
db.default.pass="mypasswrd" 
db.default.host="localhost" 

Возможно, требуется более подробные сведения о конфигурации, я просто добавил db.default.host конфигурации, строковое все с "" (я думаю, что это не нужно, но все) и проверили, был ли mysql указан в play dependencies листинг. Поскольку он был указан там (на самом деле это была первая запись), и ошибка не говорила, что это недостающая библиотека, я только что направился в Error when i try connect play with mysql 5.5 и исправил свои конфигурации.

Спасибо всем!

0

Вы должны иметь баночку драйвер MySQL JDBC в вашей зависимости. This page in the documentation показывает, как добавить драйвер дерби к зависимостям. Замените координаты дерби на the MySQL ones.

+0

Ну, у меня уже было это ... 'libraryDependencies + =" mysql "%" mysql-connector-java "%" 5.1.27 "' Я даже попытался создать папку 'lib' и поместить mysql jar в нее, но без успеха ... –

Смежные вопросы