2016-07-26 9 views
0

У меня есть метод, который получает много параметров и должен использовать это в запросе EJBQL. С обычным запросом я могу использовать:Использование EJBQL с EntityQuery jboss seam

public void method(Long code){ 
Query q = this.em.createQuery("SELECT a FROM ClassA a WHERE a.code = :code);  q.setParameter("code", code); 
} 

Это работает очень хорошо. Но изменить это EJBQL не работают, как я ожидал:

public void method(Long code){ 
     EntityQuery<Object> eq = new EntityQuery<Object>(); 
     eq.setEjbql("SELECT a FROM ClassA a WHERE a.code = :code"); 
     //Set here the param code 
     } 

Мой EntityQuery от: org.jboss.seam.framework

ответ

0

вы должны не новый entityQuery использовать этот

EntityManager em = (EntityManager) Expressions.instance().createValueExpression("#{entityManager}").getValue(); 

em.createQuery("SELECT a FROM ClassA a WHERE a.code = :code);