有没有人在Oracle JDBC驱动程序中看到过这个NPE?

时间:2015-10-28 01:11:33

标签: oracle jdbc ojdbc

我们很快就会跟踪司机,但我想知道是否有人见过这个。某些(第三方库)代码对从Oracle JDBC驱动程序获取的结果集执行rs.next(),然后调用rs.getLong()long列获取NUMBER。所有这些对于各种版本的Oracle,JDBC,操作系统等多年来都运行良好,但在特定的机器上,使用Oracle 12.1.0.2和ojdbc7 jar来获得该确切版本(12.1.0.2,来自{{3 }},发生以下异常:

java.lang.NullPointerException
    at java.lang.System.arraycopy(Native Method)
    at oracle.jdbc.driver.DynamicByteArray.get(DynamicByteArray.java:350)
    at oracle.jdbc.driver.NumberCommonAccessor.getLong(NumberCommonAccessor.java:546)
    at oracle.jdbc.driver.GeneratedStatement.getLong(GeneratedStatement.java:228)
    at oracle.jdbc.driver.GeneratedScrollableResultSet.getLong(GeneratedScrollableResultSet.java:564)

不幸的是ojdbc不是开源的。 这是一个已知的问题? 是否有一些替代的jdbc驱动程序可以尝试?

1 个答案:

答案 0 :(得分:0)

您使用的是哪个版本的Oracle JDBC瘦驱动程序?在版本12.1.0.1中有一个与您的异常类似的错误。它在12.1.0.2中修复。所以看起来你的驱动程序升级可能会解决你的问题。