Я пытаюсь выполнить родной запрос с использованием JPA 2.0.I определили мой родной запрос в orm.xmlParamertized Native Query возвращается пустая [результирующий параметр, как разделенные запятыми строки] (с помощью JPA)
Orm.xml
<named-native-query name="getAgencyUsersByRoles">
<query><![CDATA[SELECT DISTINCT a1.USR_LOGIN,c.PERSON_FIRST_NAME,c.PERSON_LAST_NAME,a1.EMAIL, b.auth_role_code FROM USERS a1,PERSON_AUTH_ROLES b,PERSON c WHERE ((b.group_code = 'RCATAG' and a1.person_id=b.person_id and b.person_id=c.person_id AND b.auth_role_code IN (?)) OR (b.group_code = 'RCEMP' and a1.person_id=b.person_id and b.person_id=c.person_id AND b.auth_role_code IN (?))) AND a1.email IS NOT NULL AND a1.status in ('ACTIVE','PASSWORD EXPIRED') ORDER BY a1.usr_login]]></query>
</named-native-query>
Код, из которого я выполняю запрос, используя jpa.
Query query = getEntityManager()
.createNamedQuery(NotificationPersistenceConstants.GET_AGENCY_USERS_BY_ROLES);
query.setParameter(1, roles);
query.setParameter(2, cccRoles);
// fetch the results
List<Object[]> list = query.getResultList();
Этот запрос не бросает любое исключение при исполнении я проверил JPA журналы моего, но приложением с возвращает мне пустой набор результатов.
Когда я запускаю тот же запрос на моем сервере БД, я получаю набор результатов, который доказывает, что у моего запроса нет никаких проблем, а также таблицы содержат записи по этому запросу для возврата.
Я попытался сломать свой собственный запрос и просто выполнить их как отдельные собственные запросы для всех таблиц, которые у меня есть в запросе. Ниже я попытался с предложением DISTINCT проверить, может ли ключевое слово DISTINCT быть виновником. Но все они работали хорошо и дали результат под List<Object[]>
SELECT DISTINCT a1.USR_LOGIN FROM USERS a1 ORDER BY a1.usr_login
SELECT DISTINCT b.auth_role_code FROM PERSON_AUTH_ROLES b
SELECT DISTINCT c.PERSON_LAST_NAME FROM PERSON c
Обновлены роли & cccRoles paramters запросов, которые я передаю в запросе.
roles = 'teller','lender','bacth',etc... // This list is dynamically created at runtime
cccRoles = 'cccadmin','ccuser',etc // This list is dynamically created at runtime
Теперь я не уверен, в чем проблема.
Вопрос? - Не должно быть, поскольку я проверил выполнение того же запроса непосредственно на сервере БД и работал хорошо.
EntityManager (JPA)? - Проверяли все конфигурации, а также выполняли отдельные запросы, упомянутые выше, и получили результат.
присоединяется? ...
Пожалуйста, помогите мне, если кто-нибудь сталкивался с такой же вопрос с использованием WAS 8.5, JPA 2.0.
Попытайтесь отследить запросы. F.e .: «изменить события набора сеанса» 10046 контекст имени трассировки навсегда, уровень 12 '; ' –