Microsoft JDBC 驱动程序在 Weblogic 数据源池中抛出 ClassCastException
Microsoft JDBC driver ClassCastException thrown in Weblogic Datasource pool
这可能是我使用 Weblogic 以来遇到的最奇怪的错误,我无法解决。
目前在我们的 Live 服务器上,我们的 Weblogic 数据源遇到了问题。它不会一直发生,但每次发生时,我都必须重新启动整个服务器才能解决它。当然,这是暂时的,但我正在努力找出根本原因。
错误是:
java.lang.ClassCastException:
com.microsoft.sqlserver.jdbc.SQLServerConnection cannot be cast to
com.microsoft.sqlserver.jdbc.SQLServerConnection
at weblogic.jdbc.wrapper.PoolConnection_com_microsoft_sqlserver_jdbc_SQLServerConnection.getAutoCommit(Unknown
Source)
at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:68)
at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:162)
at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1471)
at org.greenpole.hibernate.query.HibernateDataAccess.startOperation(HibernateDataAccess.java:43)
at org.greenpole.hibernate.threads.dividend.retrieval.DividendWarrantNoMappingWorker_Thread.runner(DividendWarrantNoMappingWorker_Thread.java:51)
at org.greenpole.hibernate.threads.dividend.retrieval.DividendWarrantNoMappingWorker_Thread.call(DividendWarrantNoMappingWorker_Thread.java:42)
at org.greenpole.hibernate.threads.dividend.retrieval.DividendWarrantNoMappingWorker_Thread.call(DividendWarrantNoMappingWorker_Thread.java:28)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
我很困惑。 SQLServerConnection 突然无法转换为 SQLServerConnection 是怎么回事?它们不是一回事吗?
编辑:
所以,我重置了数据源并纠正了错误。但是我仍然很困惑为什么它首先发生了?另外,这不是第一次发生。所以我的数据源在某个时候发生了一些事情,但它会是什么?
数据源重置成功了。然而,问题的原因仍然是个谜。从那以后再也没有发生过。
这可能是我使用 Weblogic 以来遇到的最奇怪的错误,我无法解决。
目前在我们的 Live 服务器上,我们的 Weblogic 数据源遇到了问题。它不会一直发生,但每次发生时,我都必须重新启动整个服务器才能解决它。当然,这是暂时的,但我正在努力找出根本原因。
错误是:
java.lang.ClassCastException: com.microsoft.sqlserver.jdbc.SQLServerConnection cannot be cast to com.microsoft.sqlserver.jdbc.SQLServerConnection at weblogic.jdbc.wrapper.PoolConnection_com_microsoft_sqlserver_jdbc_SQLServerConnection.getAutoCommit(Unknown Source) at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:68) at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:162) at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1471) at org.greenpole.hibernate.query.HibernateDataAccess.startOperation(HibernateDataAccess.java:43) at org.greenpole.hibernate.threads.dividend.retrieval.DividendWarrantNoMappingWorker_Thread.runner(DividendWarrantNoMappingWorker_Thread.java:51) at org.greenpole.hibernate.threads.dividend.retrieval.DividendWarrantNoMappingWorker_Thread.call(DividendWarrantNoMappingWorker_Thread.java:42) at org.greenpole.hibernate.threads.dividend.retrieval.DividendWarrantNoMappingWorker_Thread.call(DividendWarrantNoMappingWorker_Thread.java:28) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
我很困惑。 SQLServerConnection 突然无法转换为 SQLServerConnection 是怎么回事?它们不是一回事吗?
编辑:
所以,我重置了数据源并纠正了错误。但是我仍然很困惑为什么它首先发生了?另外,这不是第一次发生。所以我的数据源在某个时候发生了一些事情,但它会是什么?
数据源重置成功了。然而,问题的原因仍然是个谜。从那以后再也没有发生过。