2013-02-17 14 views
7

Ich bekomme die folgende Ausnahme beim Versuch, den Inhalt eines CKEditor (für CMS - Contents Management System) in Oracle-Datenbank - Oracle 10g.java.lang.AbstractMethodError: oracle.jdbc.driver.T4CPreparedStatement.setCharacterStream (ILjava/io/Reader; J) V

Das Feld in der Oracle-Tabelle ist vom Typ clob.

java.lang.AbstractMethodError: oracle.jdbc.driver.T4CPreparedStatement.setCharacterStream(ILjava/io/Reader;J)V

Die andere Seite ist, dass diese Ausnahme nicht verursacht, wenn ich versuche, den gleichen Inhalt in die Datenbank über AJAX mit JSON einzufügen.

Ich verwende

  • Frühling 3.2.0
  • Hibernate 4.2.0.CR1
  • Oracle JDBC-Treiber Version - 10.2.0.5.0
  • JDK - 1.7
  • Oracle 10g

Die Ausnahme verursacht, seit ich Hibernate von 3.2.5 zu 4.2.0 geändert habe. CR1

This Link sagt

There are 3 versions of the setCharacterStream() method, two of them were added as part of JDBC 4.0 (Java 1.6). Your JDBC driver may not support them:

This Antwort empfiehlt den JDBC-Treiber zu aktualisieren, aber die Frage ist, Oracle 11g, die ich noch nicht verwendet wird.

Ich bin mir ziemlich nicht sicher. Sind JDBC 11.x-Treiber mit Oracle 10g kompatibel? Es war einmal, ich hatte versucht mit einem, aber es hat nicht richtig funktioniert.

Wie löst man diese Ausnahme?


EDIT:

Ich habe gerade downloadedojdbc6.jar (früher war es ojdbc14.jar mit dem Fahrer, wie oben angegeben), die Oracle JDBC Driver version - "11.1.0.7.0-Production" enthält.

Die Ausnahme Ausnahme ist verschwunden. Bitte sagen Sie mir, wenn diese Treiberversion ist perfekt kompatibel mit Oracle 10g.

Antwort

7

I'm quite not sure. Are JDBC 11.x drivers compatible with Oracle 10g? Once upon a time, I had tried with one but it didn't work properly.

Als http://docs.oracle.com/cd/E11882_01/java.112/e16548/getsta.htm

auf Oracle 11g JDBC-Treiber-Dokumentation angegeben

Backward Compatibility

The JDBC drivers are certified to work with the currently supported versions of Oracle Database. For example, the JDBC Thin drivers in Oracle Database 11g Release 2 (11.2) are certified to work with the 10.2.x, 10.1.x, 9.2.x, and 9.0.1.x Oracle Database releases. However, they are not certified to work with older, unsupported database releases, such as 8.0.x and 7.x.