2015-08-28 379 views
0

我有問題從oracle數據庫使用jdbc檢索到java API的bfile對象。問題是,當我執行一個帶db函數的Prepared語句時,會返回一個bfile字段,這個異常將被拋出:無法檢索Bfile數據

BFILE temp =(oracle.sql.BFILE)cstmt.getObject(1);

與此錯誤消息:

java.lang.ClassCastException:oracle.sql.BFILE不能轉換爲oracle.sql.BFILE。 我從DB獲得的對象是oracle.sql.BFILE的一個實例。臨時變量是一個對象oracle.sql.BFILE。哪裏有問題?

+0

看看這篇文章是否有幫助http://stackoverflow.com/questions/11411306/java-lang-classcastexception-oracle-sql-blob-cannot-be-cast-to-oracle-sql-blob – Deh

+0

它看起來類似於http://stackoverflow.com/questions/11411306/java-lang-classcastexception-oracle-sql-blob-cannot-be-cast-to-oracle-sql-blob – seneque

+0

你是否在應用程序服務器中執行此代碼?它看起來像一個ojdbc庫類路徑衝突,你是否在應用程序服務器庫和Web應用程序WEB-INF \ lib中都有一個ojdbc庫?你能顯示你的類路徑嗎? – Simimmo

回答

1

兩個ojdbc庫文件可能在你的類路徑中。請從JBOSS/server/<configuration>/libJBOSS/lib或webapp的WEB-INF/lib中刪除一個罐子,然後重試。

+0

我得到同樣的錯誤。我從應用程序服務器中刪除了一個jar。 –