gpt4 book ai didi

java - 升级到 Oracle JDBC 瘦驱动程序会导致 SQLException : Unexpected exception while enlisting XAConnection

转载 作者:行者123 更新时间:2023-12-02 00:37:02 24 4
gpt4 key购买 nike

在升级到 Oracle JDBC 瘦驱动程序导致SQLException:征用 XAConnection 时发生意外异常(WebLogic Server 10.0,oracle 版本)中,我们收到下面列出的错误。

我们确实遵循了 Oracle 的建议

  1. 更改 weblogic 中的全局超时,即将 JDBC 连接池的 XASetTransactionTimeout 设置为 true 并将 XATransactionTimeout 设置为零当此参数设置为零时,XAResource session 超时将设置为全局事务超时。因此需要修改 WLS 的超时
  2. 如果问题仍然存在,可以通过设置 KeepXAConnTillTxComplete="true" 来避免。

    数据库产品版本:Oracle9i 企业版版本 9.2.0.5.0 - 生产,具有分区、OLAP 和 Oracle 数据挖掘选项 JServer 版本 9.2.0.5.0 - 生产
    JDBC 驱动程序名称:Oracle JDBC 驱动程序
    JDBC 驱动程序版本:11.1.0.7.0-生产

我们知道一个选择是不使用 XA 连接,但在我们的例子中这是不可能的。我们确实需要使用 XA 连接。

java.sql.SQLException: Unexpected exception while enlisting XAConnection java.sql.SQLException: XA error: XAResource.XAER_PROTO start() failed on resource 'serviceDataSource': XAER_PROTO : Routine was invoked in an inproper context
oracle.jdbc.xa.OracleXAException
at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1101)
at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:237)
at weblogic.jdbc.wrapper.VendorXAResource.start(VendorXAResource.java:50)
at weblogic.jdbc.jta.DataSource.start(DataSource.java:696)
at weblogic.transaction.internal.XAServerResourceInfo.start(XAServerResourceInfo.java:1183)
at weblogic.transaction.internal.XAServerResourceInfo.xaStart(XAServerResourceInfo.java:1116)
at weblogic.transaction.internal.XAServerResourceInfo.enlist(XAServerResourceInfo.java:275)
at weblogic.transaction.internal.ServerTransactionImpl.enlistResource(ServerTransactionImpl.java:508)
at weblogic.transaction.internal.ServerTransactionImpl.enlistResource(ServerTransactionImpl.java:435)
at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1407)
at weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1331)
at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:426)
at weblogic.jdbc.jta.DataSource.connect(DataSource.java:383)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:339)

最佳答案

在与 Oracle 协商后,我们决定将驱动程序升级到可用的最新驱动程序。这似乎已经解决了问题。

关于java - 升级到 Oracle JDBC 瘦驱动程序会导致 SQLException : Unexpected exception while enlisting XAConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3604008/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com