尝试将CKEditor(用于CMS - 内容管理系统)的内容插入Oracle数据库时,我收到以下异常 - Oracle 10g 。
Oracle表中的字段是clob类型。
java.lang.AbstractMethodError: oracle.jdbc.driver.T4CPreparedStatement.setCharacterStream(ILjava / IO /阅读器;Ĵ)V
另一方面是当我尝试使用JSON通过AJAX将相同内容插入数据库时,不会导致此异常。
我正在使用
由于我将Hibernate从3.2.5更改为4.2.0.CR1
,因此导致异常This链接说
setCharacterStream()方法有3个版本,其中两个版本 作为JDBC 4.0(Java 1.6)的一部分添加。您的JDBC驱动程序可能不会 支持他们:
This回答建议升级JDBC驱动程序,但这个问题是关于我还没有使用的Oracle 11g。
我不太确定。 JDBC 11.x驱动程序是否与Oracle 10g兼容?曾几何时,我曾试过一次,但它没有正常工作。
如何解决此异常?
修改
我只有downloaded ojdbc6.jar
(以前是ojdbc14.jar
,其驱动程序如上所述),其中包含Oracle JDBC Driver version - "11.1.0.7.0-Production"
。
异常异常消失了。请告诉我,如果此驱动程序版本与 Oracle 10g 完全兼容。
答案 0 :(得分:8)
我不太确定。 JDBC 11.x驱动程序是否与Oracle 10g兼容? 曾几何时,我曾试过一次,但它没有正常工作。
如Oracle JDBC驱动程序11g文档http://docs.oracle.com/cd/E11882_01/java.112/e16548/getsta.htm
所述向后兼容性
JDBC驱动程序经过认证可与当前支持的驱动程序配合使用 Oracle数据库的版本。例如,JDBC Thin驱动程序 Oracle Database 11g第2版(11.2)经过认证可以使用 10.2.x,10.1.x,9.2.x和9.0.1.x Oracle数据库版本。但是,它们未经过认证,无法使用较旧的不受支持的数据库 版本,例如8.0.x和7.x。