Итак, я определил пользовательский источник данных для подключения к моей базе данных MySQL, но при запуске Wildfly Swarm выдает мне следующую ошибку:
2018-09-27 10: 37: 23,213 ОШИБКА [org.jboss.as.controller.management-operation] (main) WFLYCTL0013: сбой операции ("add") - адрес: (("deploy" => "my-application.war")) - описание ошибки: {"WFLYCTL0412: Обязательные службы, которые не установлены: "=> [" jboss.naming.context.java.jboss.CustomDS "]," WFLYCTL0180: Службы с отсутствующими / недоступными зависимостями "=> [" jboss.persistenceunit. \ "My-application.war # my-application \ "отсутствует [jboss.naming.context.java.jboss.CustomDS]]," jboss.persistenceunit. \ "my-application.war # my-application \". FIRST_PHASE отсутствует [jboss.naming.context.java.jboss.CustomDS] "]} 2018-09-27 10: 37: 23,218 ОШИБКА [org.jboss.as.server] (основная) WFLYSRV0021: развертывание развертывания" my-application.war "был откатан со следующим сообщением об ошибке: {" WFLYCTL0412: Требуемые сервисы не являютсяnstalled: "=> [" jboss.naming.context.java.jboss.CustomDS "]," WFLYCTL0180: Службы с отсутствующими / недоступными зависимостями "=> [" jboss.persistenceunit. \ "my-application.war # my-application\ "отсутствует [jboss.naming.context.java.jboss.CustomDS]", "jboss.persistenceunit. \" my-application.war # my-application \ ". FIRST_PHASE отсутствует [jboss.naming.context.java.jboss.CustomDS] "]}
Моя конфигурация следующая:
persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="primary" transaction-type="JTA">
<jta-data-source>java:jboss/datasources/CustomDS</jta-data-source>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
<property name="hibernate.hbm2ddl.auto" value="update"/>
<property name="hibernate.show_sql" value="false"/>
<property name="hibernate.format_sql" value="true" />
<property name="hibernate.use_sql_comments" value="true" />
<property name="hibernate.default_batch_fetch_size" value="16" />
<property name="hibernate.jdbc.batch_size" value="100" />
<property name="hibernate.order_inserts" value="true" />
<property name="hibernate.order_updates" value="true" />
<property name="hibernate.id.new_generator_mappings" value="true" />
<property name="hibernate.connection.requireSSL" value="false" />
<property name="hibernate.jdbc.time_zone" value="CEST"/>
</properties>
</persistence-unit>
</persistence>
standalone.xml
<subsystem xmlns="urn:jboss:domain:datasources:5.0">
<xa-datasource jdni-name="java:jboss/datasources/CustomDS" pool-name="CustomDS">
<driver>mysql</driver>
<xa-datasource-property name="ServerName">localhost</xa-datasource-property>
<xa-datasource-property name="DatabaseName">mydb</xa-datasource-property>
<security>
<user-name>someusername</user-name>
<password>somepassword</password>
</security>
<validation>
<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"></valid-connection-checker>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"></exception-sorter>
</validation>
</xa-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">
<driver-class>com.mysql.cj.jdbc.Driver</driver-class>
<xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
</subsystem>
Я перепробовал все, включая ручное развертывание драйвера MySQL, но, похоже, ничего не работает ... Любой совет?Нужно ли что-то определять, создавая файл web.xml?