0
JDK1.6でDBからBLOB型のデータを取得したい!(再質問)
少し前に、「OracleでBLOB型の項目にデータを登録したい。」の質問をしたものです。
あまりに色々試しすぎて自分でもよくわからなくなってきてしまったため、一度自分の中で整理も含め、改めて質問をさせてもらいました。
状況としましては、この度JDK1.4からJDK6にバージョンを上げましたところ、BLOB型のデータをSQLより取得している部分が一部コンパイルエラーとなってしまい悩んでいます。
環境
apache2、tomcat6、JDK6、oracle9、JDBCドライバ(commons-dbcp-1.2.1.jar)を使用。
エラー箇所
SQL文を実行し、resultSetよりBLOB型のデータを取り出す部分
((OracleResultSet)((DelegatingResultSet)resultSet).getDelegate()).getBLOB("AM")
JDK1.4では使用できた、oracle.jdbc.driver.OracleResultSetが使えなくなったためコンパイルエラーが起きています。
JDK6の場合は、どのように取得すればいいのでしょうか。
java.sql.Blobを使用し、(Blob)(resultSet.getBlob("AM"))で普通に取得できるというアドバイスもいただきましたが、
java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getBlob(Ljava/lang/String;)Ljava/sql/Blob;
が表示され見つからないと言われてしまいました。
Javadocを調べたところ、JDK6の場合はjava.sql.Blobが使用できるみたいなんですが…
コンパイルも通ってます。
どこが悪いのか…
こういうこと試してみたら?とか、ここ間違っているよという方がいらっしゃいましたら、よろしくお願いします。