2012-01-18 2 views
0

Я использую JBOSS AS 7.0.2. Я хочу, чтобы создать подключение к серверу MySQL старого путь (я знаю, что я должен использовать JNDI, но мне просто нужно это для некоторой быстрой вещи):JBOSS AS 7 и com.mysql.jdbc.Driver error

Class.forName("com.mysql.jdbc.Driver").newInstance(); 
con = DriverManager.getConnection(.....); 

У меня есть MySQL-разъем-Java-5.1.18- bin.jar включен в C: \ Java \ jboss-as-7.0.2.Final \ standalone \ deployments. Я также добавил его в путь сборки. Я вижу свои таблицы через Data Source Explorer. Но когда я пытаюсь подключиться к нему через код, он выдает исключение при попытке создать новый экземпляр:

Class.forName("com.mysql.jdbc.Driver").newInstance(); 

Предложение ClassNotFoundException улова попадается это исключение:

Error: com.mysql.jdbc.Driver from [Module "deployment.Seminarska.war:main" from Service Module Loader] 

я нашел this нити это решение:

Как правило, вы не должны включать ваши драйверы JDBC в свою войну .

Предлагаю вам отметить драйвер, как указано, и добавить его в каталог каталога сервера.

Что означает отметить водитель как предусмотрено? Как это сделать?

ответ

5

«Отметить драйвер как предусмотрено» относится к тому, как вы определяете зависимости вашего модуля, если вы используете Maven в качестве инструмента сборки. Зависимости могут иметь разные области действия, а «предоставленные» означают, что эта конкретная зависимость требуется для компиляции, но будет предоставляться средой выполнения (обычно сервером приложений), поэтому она не должна включаться в упакованный артефакт (например, войну).

Подробнее о масштабах зависимостей Maven здесь:

http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

касается того, как настроить источники данных в JBoss AS 7 вы можете найти инструкции здесь:

https://community.jboss.org/wiki/DataSourceConfigurationInAS7