Проблема при подключении к Microsoft SQL из EAP 7.0 - PullRequest
0 голосов
/ 04 марта 2019

Я определил свой источник данных JNDI в standalone.xml

<datasource jta="false" jndi-name="java:/dailymenu" pool-name="dailymenu" enabled="true">
   <connection-url>jdbc:sqlserver://<host>:<port>;DatabaseName=<db-name>;</connection-url>
   <driver>mssql</driver>
   <security>
      <user-name><username></user-name>
      <password><pw></password>
   </security>
</datasource>

И в разделе:

<driver name="mssql" module="com.mircosoft.sqlserver.jdbc">
   <xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerXADataSource</xa-datasource-class>
</driver>

И я добавил module.xml в jboss-eap-7.0 ▸ модули ▸ com ▸ microsoft ▸ sqlserver ▸ jdbc ▸ main (вместе с mssql-jdbc-7.2.1.jre8.jar)

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="com.microsoft.sqlserver.jdbc">
<resources>
    <resource-root path="mssql-jdbc-7.2.1.jre8.jar"/>
</resources>
<dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
</dependencies>
</module>

Однако при запуске jBoss я получаю:

ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "dailymenu.war")]) - failure description: {
"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"dailymenu.war\".component.DailyMenuApplication.START" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"dailymenu.war\".component.DailyMenuApplication.START: java.lang.IllegalStateException: WFLYEE0042: Failed to construct component instance
Caused by: java.lang.IllegalStateException: WFLYEE0042: Failed to construct component instance
Caused by: javax.ejb.EJBException: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
Caused by: org.hibernate.engine.jndi.JndiException: Unable to lookup JNDI name [dailymenu]
Caused by: javax.naming.NameNotFoundException: dailymenu [Root exception is java.lang.IllegalStateException]
Caused by: java.lang.IllegalStateException"},
"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {
    "Services that were unable to start:" => [
        "jboss.deployment.unit.\"dailymenu.war\".deploymentCompleteService",
        "jboss.deployment.unit.\"dailymenu.war\".moduleDeploymentRuntimeInformationStart",
        "jboss.undertow.deployment.default-server.default-host./dailymenu",
        "jboss.undertow.deployment.default-server.default-host./dailymenu.UndertowDeploymentInfoService"
    ],
    "Services that may be the cause:" => ["jboss.jdbc-driver.mssql"]
}
}

1 Ответ

0 голосов
/ 04 марта 2019

Хорошо, у меня была опечатка.Имя модуля драйвера должно, конечно, точно соответствовать пути к файлу module.xml (без «main»).

...