o que a de errado com esse hql. ele não da resultado algum
from Pessoa as pes where pes.tipo =‘Juridica’ or pes.tipo=‘Fisica’ AND pes.nome like :nome
o que a de errado com esse hql. ele não da resultado algum
from Pessoa as pes where pes.tipo =‘Juridica’ or pes.tipo=‘Fisica’ AND pes.nome like :nome
Talvez pode ser o modo como você passa os parâmetros.
Aqui tem um modo que funciona: JPA Consultas e Dicas
Se não me engano na página 6
Outra coisa, coloque assim: (pes.tipo =‘Juridica’ or pes.tipo=‘Fisica’)
na verdade eu passo um parametro assim
get bean
public List<Pessoa> getPessoas() {
if (filtro.equals("nome")) {
pessoas = hibernateDao.getFiltro("from Pessoa as pes where pes.tipo ='Juridica' or pes.tipo='Fisica' AND pes.nome like :nome", param, filtro);
} else if (filtro.equals("tipo")) {
pessoas = hibernateDao.getFiltro("from Pessoa as pes where pes.tipo ='Juridica' or pes.tipo='Fisica' AND pes.tipo like :tipo", param, filtro);
} else if (filtro.equals("razaosocial")) {
pessoas = hibernateDao.getFiltro("from Pessoa as pes where pes.tipo ='Juridica' or pes.tipo='Fisica' AND pes.razaoSocial like :razaosocial", param, filtro);
} else {
pessoas = hibernateDao.getPessoas();
}
return pessoas;
}
dao
public List<T> getFiltro(String query, String param, String campo) {
Session session = HibernateUtil.getSf().openSession();
session.beginTransaction();
Query q = session.createQuery(query);
q.setString(campo, "%" + param + "%");
List<T> beans = q.list();
session.getTransaction().commit();
return beans;
}
jsf
faço isso com outras paginas e da certo
Se aí não ta dando certo tem algo que não está certo. Adianta nada nas outras funcionar e aí não. =p
Fez oq eu falei de colocar o () ?
agradecido funciono
pessoas = hibernateDao.getFiltro(“from Pessoa as pes where (pes.tipo =‘Juridica’ or pes.tipo=‘Fisica’) AND pes.nome like :nome”, param, filtro);
Se aí não ta dando certo tem algo que não está certo 