2016-10-09 5 views
3

Я использую Wildfly 10. Сначала я попытался создать источник данных через CLI.Wildfly MySQL datasource: service jboss.jdbc-driver.mysql (отсутствует) иждивенцы

Команда deploy mysql-connector-java-6.0.4.jar выполнена хорошо. /subsystem=datasources:installed-drivers-list показывает, что драйвер был установлен

{ 
    "driver-name" => "mysql-connector-java-6.0.4.jar", 
    "deployment-name" => "mysql-connector-java-6.0.4.jar", 
    "driver-module-name" => undefined, 
    "module-slot" => undefined, 
    "driver-datasource-class-name" => undefined, 
    "driver-xa-datasource-class-name" => undefined, 
    "driver-class-name" => "com.mysql.cj.jdbc.Driver", 
    "driver-major-version" => 6, 
    "driver-minor-version" => 0, 
    "jdbc-compliant" => false 
} 

Но источник данных не был создан с помощью команды

data-source add --name=zktest-datasource 
--jndi-name=java:/jdbc/zktest-database --driver-name=mysql-connector-java-6.0.4.jar --connection-url=jdbc:mysql://localhost:3306/zktest --user-name=root --password=111 

Проверка соединения

/subsystem=datasources/data-source=zktest-datasource:test-connection-in-pool 
was failed. 

Теперь я пытаюсь создать источник данных с помощью standalone.xml

Мой modules.xml

<module xmlns="urn:jboss:module:1.1" name="com.mysql.jdbc"> 
    <resources> 
    <resource-root path="mysql-connector-java-6.0.4.jar"> 
    </resource-root> 
    </resources> 
    <dependencies> 
    <module name="javax.api"></module> 
    <module name="javax.transaction.api"></module> 
    </dependencies> 
</module> 

modules.xml помещают в JBOSS_HOME/modules/system/layers/base/com/mysql/jdbc

раздел 'DataSources' в JBOSS_HOME/standalone/configuration/standalone.xml

<datasources> 
     <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"> 
      <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url> 
      <driver>h2</driver> 
      <security> 
       <user-name>sa</user-name> 
       <password>sa</password> 
      </security> 
     </datasource> 
     <datasource jndi-name="java:jboss/datasources/MySqlDS" pool-name="MySqlDS" enabled="true" use-java-context="true"> 
      <connection-url>jdbc:mysql://localhost:3306/zktest</connection-url> 
      <driver>mysql</driver> 
      <security> 
       <user-name>root</user-name> 
       <password>111</password> 
      </security> 
     </datasource> 
     <drivers> 
      <driver name="h2" module="com.h2database.h2"> 
       <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> 
      </driver> 
      <driver name="mysql" module="com.mysql.jdbc"> 
       <xa-datasource-class>com.mysql.cj.jdbc.Driver</xa-datasource-class> 
      </driver> 
     </drivers> 
    </datasources> 

Теперь в то время как deploing я вижу такое сообщение

WFLYCTL0184: Новые отсутствующие/неявные зависимости : servi се jboss.jdbc-driver.mysql (отсутствует) иждивенцы: [обслуживание jboss.driver-demander.java:jboss/datasources/MySqlDS, обслуживание org.wildfly.data-source.MySqlDS]

И в то время как тест соединение в панели управления Wildfly:

{ "результат" => "не удалось", "неудача-описание" => «WFLYJCA0040: не удалось вызвать операцию: WFLYJCA0042: не соответствовали бассейн. Проверьте JndiName: Java: JBoss/DataSources/MySqlDS», "откат"=> истинно}

ответ

4

Проблема была решена путем изменения драйвера для MySQL-разъем-Java-5.1.38.jar I. удален старый драйвер, а затем выполнить следующие шаги в CLI:

module add --name=com.mysql.jdbc --resources=mysql-connector-java-5.1.38.jar --dependencies=javax.api,javax.transaction.api 

/subsystem=datasources/jdbc-driver=mysql:add(driver-name="mysql",driver-module-name="com.mysql.jdbc",driver-class-name=com.mysql.jdbc.Driver) 

data-source add --name=MySQLDS --driver-name=mysql --connection-url=jdbc:mysql://localhost:3306/zktest --jndi-name=java:jboss/jdbc/MySQLDS --user-name=username --password=password 

data-source enable --name=MySQLDS 
1

Моя проблема заключалась в том, что я загрузив неправильный баночку

мне пришлось загрузить другой кувшин с MySQL website

.

Названия правой баночки MySQL-разъем-Java-5.1.40-bin.jar обратить внимание на -bin

Это решило проблему.

-2

Основная проблема с банкой, которую вы используете в kmodule.xml.

Пожалуйста, используйте последнюю банку с сайта Mysql.