私は、Java(春)でORACLEからストアド関数を呼び出すこのメソッドを持っています - エンティティマネージャ+ createNativeQueryを使用して..
(...)
String set_professional = "{? = call
pk_backoffice.set_professional(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?}";
//32 parameters IN
query = entity.createNativeQuery(set_professional);
(...)
そして、私がそれをテストしようとするたびに、次のように表示されます: Positional parameter does not exist: 31 in query: {? = call (...) しかし、31 番目の位置に何かありますか..それは存在します..
query.setParameter(31, prof.getFax()); // fax
また、以前の例外で1つの原因でパラメーターを開始しました.1ベースであると言われました.getの代わりに文字列とnull値で試しましたが、結果は同じです..クエリについては、? 何度も、だから私はそれが32(パラメータ用)+ 1(リターン - 最初?)を持っていると確信しています...
誰でも助けることができますか?