На самом деле Брент прав, ваш NameQuery должен выглядеть примерно так:
@NamedQuery(name = "Voter.findvoter", query = "SELECT count(*) FROM Voter v WHERE v.voterID = :voterID AND where v.password = :password")
@Entity
public class Voter implements Serializable{ ... }
и где-то еще вы должны попробовать это (что Дик уже сказал)
public class VoterFasade{
public List<Voter> findVoter(long id,String password){
List<Voter> results = em.createNamedQuery("Voter.findvoter")
.setParameter("voterID", id)
.setParameter("password",password)
.getResultList();
return result;
}
}
тогда вы можете использовать его как
@Inject
VoterFasade voterFasade;
///
long id=12;
voterFasade.findVoter(id);
должен действительно работать. (Это не скомпилированный код).
Вы также можете сделать это с репозиторием, проверьте ссылку ниже, часть Репозитарий Листинг23. Пример репозитория
введите описание ссылки здесь