簡體   English   中英

未捕獲的可拋出 java.lang.AbstractMethodError: org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.createArrayOf

[英]Uncaught Throwable java.lang.AbstractMethodError: org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.createArrayOf

嘗試在具有數據源池連接的 Microsoft SQL 服務器上調用 con.createArrayOf 方法時出現以下錯誤

未捕獲的可拋出 java.lang.AbstractMethodError: org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.createArrayOf(Ljava/lang/String;[Ljava/lang/Object;)Ljava/sqlArray;)

任何領先都將是可觀的。

基本上,您不能在當前庫中使用 createArrayOf 方法。 您必須使用不同的數據庫驅動程序庫。

您可以使用https://docs.microsoft.com/en-us/sql/connect/jdbc/microsoft-jdbc-driver-for-sql-server 之類的東西,因為您使用的是 SQL 服務器。

The error suggests you are using Apache DBCP 1.3 or older, as the method you are trying to call was introduced in JDBC 4 (Java 6), while Apache DBCP 1.3 supports JDBC 3 (Java 1.4/5).

Given the overview at https://commons.apache.org/proper/commons-dbcp/ you need to use at minimum Apache DBCP 1.4, or a newer version (the latest is 2.7.0, for Java 8 and higher).

Note though that upgrading won't help you much, because the Microsoft SQL Server JDBC driver implementation of createArrayOf will throw a SQLFeatureNotSupportedException as SQL Server doesn't support arrays.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM