My Oracle Support Banner

JDBC Driver 12c へアップグレード後、getParameterMetaData で ArrayIndexOutOfBoundsException が発生する (Doc ID 2068158.1)

Last updated on APRIL 06, 2020

適用範囲:

JDBC - バージョン 11.2.0.1.0 から 12.1.0.2.0 [リリース 11.2 から 12.1]
この文書の内容はすべてのプラットフォームに適用されます。

現象

 JDBC Driver を 12.1.0.x へアップグレードした後、getParameterMetaData 実行時に ArrayIndexOutOfBoundsException が発生します。

 下記は問題発生時のスタックの例です:

   java.lang.ArrayIndexOutOfBoundsException: -5
    at oracle.jdbc.driver.OracleParameterMetaDataParser.computeBasicInfo(OracleParameterMetaDataParser.java:277)
    at oracle.jdbc.driver.OracleParameterMetaDataParser.getParameterMetaDataSql(OracleParameterMetaDataParser.java:433)
    at oracle.jdbc.driver.OracleParameterMetaData.getParameterMetaData(OracleParameterMetaData.java:58)
    at oracle.jdbc.driver.OraclePreparedStatement.getParameterMetaData(OraclePreparedStatement.java:12861)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.getParameterMetaData(OraclePreparedStatementWrapper.java:1551)
         ...

 java.lang.ArrayIndexOutOfBoundsException: -5
   at oracle.jdbc.driver.OracleParameterMetaDataParser.computeBasicInfo(OracleParameterMetaDataParser.java:276)
   at oracle.jdbc.driver.OracleParameterMetaDataParser.getParameterMetaDataSql(OracleParameterMetaDataParser.java:432)
   at oracle.jdbc.driver.OracleParameterMetaData.getParameterMetaData(OracleParameterMetaData.java:58)
   at oracle.jdbc.driver.OraclePreparedStatement.getParameterMetaData(OraclePreparedStatement.java:11621)
   at oracle.jdbc.driver.OraclePreparedStatementWrapper.getParameterMetaData(OraclePreparedStatementWrapper.java:1552)
        ...

 
 java.lang.ArrayIndexOutOfBoundsException: 128
   at oracle.jdbc.driver.OracleParameterMetaDataParser.computeBasicInfo(OracleParameterMetaDataParser.java:327)
   at oracle.jdbc.driver.OracleParameterMetaDataParser.getParameterMetaDataSql(OracleParameterMetaDataParser.java:433)
   at oracle.jdbc.driver.OracleParameterMetaData.getParameterMetaData(OracleParameterMetaData.java:60)
   at oracle.jdbc.driver.OraclePreparedStatement.getParameterMetaData(OraclePreparedStatement.java:12861)
   at oracle.jdbc.driver.OraclePreparedStatementWrapper.getParameterMetaData(OraclePreparedStatementWrapper.java:1551)
        ...


JDBC Driver 11.2.0.x を使用した場合には正常に動作します。

変更点

 JDBC Driver を 12c へアップグレードした後に発生します。

原因

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


本書の内容
現象
変更点
原因
解決策
参照情報

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.