2016-08-27 5 views
2

Я новичок Java и JBoss, пытающийся получить JBoss AS 7.0.1, работая с mySQL 5.5 на моей машине с Windows 10.
я получаю следующее сообщение об ошибке, когда я начинаю JBoss: -JBoss и MySQL Новые отсутствующие/неудовлетворенные зависимости

16: 19: 39,480 INFO [org.jboss.as.controller] (Boot Thread Controller) Служба отчетов состояния Новые отсутствующие/неудовлетворенные зависимости: сервис jboss.jdbc-driver.com_mysql (отсутствует)

Это то, что я сделал

1 создан каталог jboss-as-7.0.1.Final\modules\com\mysql\main

2 Файлы там: module.xml и mysql-connector-java-5.1.26-bin.jar (скачать с официального сайта тузд)

3 Содержание module.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<module xmlns="urn:jboss:module:1.0" name="com.mysql" slot="main"> 
    <resources> 
    <resource-root path="mysql-connector-java-5.1.39-bin.jar"/> 
    </resources> 
    <dependencies> 
    <module name="javax.api"/> 
    </dependencies> 
</module> 

4 Соответствующие части из jboss-as-7.0.1.Final \ автономных \ конфигурация \ standalone.xml:

 <datasources> 
      <datasource jndi-name="java:/jbossdbDS" pool-name="my_pool" enabled="true" jta="true" use-java-context="true" use-ccm="true"> 
       <connection-url> 
        jdbc:mysql://localhost:3306/jbossdb 
       </connection-url> 
       <driver> 
        com.mysql 
       </driver> 
       <security> 
        <user-name> 
         root 
        </user-name> 
        <password> 
         password 
        </password> 
       </security> 
       <timeout> 
        <idle-timeout-minutes> 
         0 
        </idle-timeout-minutes> 
        <query-timeout> 
         600 
        </query-timeout> 
       </timeout> 
       <statement> 
        <prepared-statement-cache-size> 
         100 
        </prepared-statement-cache-size> 
        <share-prepared-statements/> 
       </statement> 
      </datasource> 
      <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="H2DS" enabled="true" jta="true" use-java-context="true" use-ccm="true"> 
       <connection-url> 
        jdbc:h2:mem:test;DB_CLOSE_DELAY=-1 
       </connection-url> 
       <driver> 
        h2 
       </driver> 
       <pool> 
        <prefill> 
         false 
        </prefill> 
        <use-strict-min> 
         false 
        </use-strict-min> 
        <flush-strategy> 
         FailingConnectionOnly 
        </flush-strategy> 
       </pool> 
       <security> 
        <user-name> 
         sa 
        </user-name> 
        <password> 
         sa 
        </password> 
       </security> 
      </datasource> 
      <drivers> 
       <driver name="mysql" module="com.mysql"/> 
       <driver name="h2" module="com.h2database.h2"> 
        <xa-datasource-class> 
         org.h2.jdbcx.JdbcDataSource 
        </xa-datasource-class> 
       </driver> 
      </drivers> 
     </datasources> 
+0

Необходимо установить JAR-драйвер JAR JDBC в CLASSPATH. – duffymo

+0

Спасибо. Я просто установил системную переменную CLASSPATH в C: \ JBOSS \ jboss-as-7.0.1.Final \ modules \ com \ mysql \ main, где находится файл mysql-connector-java-5.1.39-bin.jar , но я все равно получаю ту же ошибку. – Saul

+0

JBOSS игнорирует переменные среды, как и все серверы приложений Java EE. Лучше разместить этот JAR в соответствующем месте: https://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/6/html/Administration_and_Configuration_Guide/Install_a_JDBC_Driver_as_a_Core_Module1.html – duffymo

ответ

0

Вы упомянули имя файла банку MySQL в качестве модулей

MySQL-разъем-Java-5.1.26-bin.jar

Но в вашем module.xml он неправильно настроен как

MySQL-разъем-Java-5.1.39-бен. баночка

Pls Поправьте ваш module.xml

Ваш драйвер настроен источник данных с именем

 <driver> 
      com.mysql 
     </driver> 

Update, что ваше правильное имя драйвера как

  <driver> 
       mysql 
      </driver> 
0

Спасибо за ответы.

Оказывается, файл mysql-connector-java-5.1.39-bin.jar поврежден, файл java.sql.Driver внутри него пуст. Не знаю, как это произошло!

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