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. создание контрольного примера для проверки метода, в котором вызывается хранимая процедура (которая выдает ошибку) - работает хорошо.

Наш вопрос: почему один и тот же запрос работает хорошо в тестовом случае, а не во время работы в приложении?

Любые идеи?

Обновление Это была моя ошибка, я неправильно передал аргументы. Просто поменял местами первые два аргумента. Всем, кто сталкивается с этой проблемой, проверьте порядок аргументов в именованном запросе.

Спасибо.


person Sankaranarayanan    schedule 28.06.2013    source источник


Ответы (1)


Это была моя вина, я неправильно передал аргументы. Просто поменял местами первые два аргумента. Всем, кто сталкивается с этой проблемой, проверьте порядок аргументов в именованном запросе.

person Sankaranarayanan    schedule 01.07.2013