Sql Server JDBC无法在wildfly AS上运行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql Server JDBC无法在wildfly AS上运行相关的知识,希望对你有一定的参考价值。

大家好我正在尝试将sqlserver jdbc与wildfly AP一起使用,但是当我尝试在数据源之后测试连接时,我总是得到这个错误:

{"WFLYCTL0062: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-1" => {
      "WFLYCTL0412: Required services that are not installed:" => ["jboss.jdbc-driver.mssql"],
      "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "org.wildfly.data-source.Eventis is missing [jboss.jdbc-driver.mssql]",
        "jboss.driver-demander.java:/Eventis is missing [jboss.jdbc-driver.mssql]"
      ]
}}}

这里是配置文件的内容:

module.xml:

<module xmlns="urn:jboss:module:1.3" name="com.microsoft.sqlserver">
    <resources>
        <resource-root path="mssql-jdbc-6.4.0.jre8" />
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
    </dependencies>
</module>

Standalone.xml:

<driver name="mssql" module="system.layers.base.com.microsoft.sqlserver">
    <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
</driver>

最后我的jdbc jar文件位于此路径下:

wildfly-14.0.0.Final 模块 SYSTEM 层基 COM 微软 SQLSERVER 主

答案

您的模块名称不正确。它应该是com.microsoft.sqlserverstandalone.xml片段应如下所示:

<driver name="mssql" module="com.microsoft.sqlserver">
    <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
</driver>

您可以使用以下命令在CLI中更改此设置

/subsystem=datasources/jdbc-driver=mssql:remove
/subsystem=datasources/jdbc-driver=mssql:add(driver-name=mssql, driver-module-name="com.microsoft.sqlserver")

以上是关于Sql Server JDBC无法在wildfly AS上运行的主要内容,如果未能解决你的问题,请参考以下文章

Sql Server JDBC 不适用于 Wildfly AS

无法使用 JDBC 在 android 中连接到 sql server 2008

Wildfly + SQL Server 连接随机关闭且未恢复

我无法使用带有 Android Studio 的 JDBC 连接到 SQL Server Express

无法将 jdbc 连接到 sql server 2008 r2

无法运行JDBC sink将数据从Kafka移动到MS SQL Server