【问题标题】:Having trouble connecting to datasource in Redhat 7.5在 Redhat 7.5 中连接到数据源时遇到问题
【发布时间】:2019-08-19 05:18:58
【问题描述】:

我正在为 redhat sso 设置测试机器。我需要将它连接到 Microsoft SQL Server 2016 数据库。我已经安装了 jdbc 驱动程序 7.2。数据源是 NON XA。我没有运气让它连接。

我已部署为核心组件 (jboss7) 以及已部署的包

我正在为 redhat sso 设置测试机器。我需要将它连接到 Microsoft SQL Server 2016 数据库。

jdbc 连接字符串:jdbc:microsoft:sqlserver://myserver:1111;DatabaseName=testdb

module.xml:

<resources>
    <resource-root path="mssql-jdbc-7.2.1.jre8.jar"/>
</resources>

<dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
    <module name="javax.xml.bind.api"/>
</dependencies>

独立的.xml:

jdbc:microsoft:sqlserver://myserver:1111;DatabaseName=testdb com.microsoft.sqlserver.jdbc.SQLServerDriver com.microsoft.sqlserver.jdbc.SQLServerDataSource sqlserver 用户 用户

预计连接到数据库,但我得到:

我测试连接时的错误是:“WFLYJCA0040: failed to invoke an operation: WFLYJCA0047: Connection is not valid”

【问题讨论】:

    标签: sql-server jdbc jboss driver datasource


    【解决方案1】:

    如果您使用的是 Microsoft SQL Server JDBC 驱动程序版本 7.2,jdbc:microsoft:sqlserver://myserver:1111;DatabaseName=testdb 是错误的连接字符串。 jdbc:microsoft:sqlserver: 由 Microsoft SQL Server 2000 JDBC 驱动程序使用,并在 2005 年从 Microsoft SQL Server JDBC 2005 JDBC 驱动程序开始被 jdbc:sqlserver: 取代。

    请参阅Building the Connection URL 了解更多信息。

    所以首先尝试jdbc:sqlserver://myserver:1111;DatabaseName=testdb,如果这不起作用,请验证您是否不小心使用了其他不再有效的配置值。否则,发布一个新问题并确保提供所有相关的错误日志和异常堆栈跟踪。

    【讨论】:

    • 非常感谢,这是问题的一半。出于某种原因,我两次调用了驱动程序类。一旦在我安装的驱动程序中,然后在设置数据存储时再次调用它。一旦这个和你所说的被删除,一切都很好。
    • @Owen 我不知道你说的“我的驱动程序类被调用了两次”是什么意思以及为什么会出现问题。
    • 我首先使用 cli 安装了驱动程序。然后,当在 JBOSS eap 中添加数据源时,它要求指定驱动程序,我再次在那里指定了驱动程序类。一旦我从 jboss 管理控制台中删除它们,我就能够连接。我对这一切都很陌生,我能走到这一步真是个奇迹。
    【解决方案2】:

    驱动程序类被调用了两次。一次在我安装的驱动程序中,然后在设置数据存储时再次调用它

    【讨论】:

      猜你喜欢
      • 2011-11-17
      • 2023-03-08
      • 2017-06-03
      • 2020-10-01
      • 2022-12-07
      • 2015-07-24
      • 2019-10-01
      • 2019-12-16
      • 1970-01-01
      相关资源
      最近更新 更多