2013-06-28 86 views
1

我們從休眠調用存儲過程(它內部調用另一個)。SQLException 00604&01003從休眠調用存儲過程命名查詢

Query query = session.getNamedQuery("query_name"); query.setParameter('param', 'value');
query.setResultTransformer(AliasToEntityMapResultTransformer.INSTANCE); List returnList = query.list();

的存儲過程是獨立運行的很好,當我們在SQL Developer中運行。但是我們通過應用程序運行它,它給出錯誤

java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1 

ORA-01003: no statement parsed 

事情,我們嘗試:

  1. 調用從休眠一個簡單的存儲過程 - 運作良好。
  2. 創建測試用例來測試存儲的 過程(拋出錯誤)被調用的方法 - 運行良好。

我們的問題是,爲什麼同樣的查詢正在運行測試用例好,而不是thorugh應用程序運行時?

任何想法?

更新 這是我的錯,我正確地傳遞參數。只是交換了第一個兩個論點。對於遇到此問題的任何人,請檢查您在命名查詢中排序的參數。

謝謝。

回答

0

這是我的錯,我正確地傳遞了參數。只是交換了第一個兩個論點。對於遇到此問題的任何人,請檢查您在命名查詢中排序的參數。