2015-01-13 2 views
0

Когда мы устанавливаем значение marketOfferId через setParameter, он не возвращает результат. Но когда я заменяю :marketOfferId фактическим значением с одинарными кавычками в запросе, он работает «BDEN3F». Может кто-нибудь помочь мне в чем причина?JPA Именованный запрос не возвращает результаты

String iden = "BDEN3F"; 
TypedQuery query = em.createNamedQuery(namedQuery,MarketingOfferWEB.class).setParameter("marketOfferId",iden); 

- Не работает

@NamedNativeQuery(name = MarketingOfferWEB.FIND_WEB_MARKETOFFER, query = "SELECT * FROM VW_WEB_MKT_OFFERS WHERE MKT_OFFER_UID = :marketOfferId AND TENANT_ID=1", resultClass = MarketingOfferWEB.class) 

- Рабочая

@NamedNativeQuery(name = MarketingOfferWEB.FIND_WEB_MARKETOFFER, query = "SELECT * FROM VW_WEB_MKT_OFFERS WHERE MKT_OFFER_UID = 'BDEN3F' AND TENANT_ID=1", resultClass = MarketingOfferWEB.class) 

ответ

0

я решил проблему путем перехода от TypedQuery к запросу.

Запрос запроса = em.createNamedQuery (namedQuery, MarketingOfferWEB.class) .setParameter ("marketOfferId", iden);

Смежные вопросы