fala galera…
é o seguinte…
to tentando usar filtros de pesquisa com hibernate,a traves da API Criteria.
Vejam o metodo q fiz no meu DAO:
public List<Cliente> buscaPorNome(String busca){
Criteria select = session.createCriteria(Cliente.class);
select.createCriteria("nome").add(Restrictions.ge("nome",busca));
List<Cliente> resultado = select.list();
return resultado;
}
Na minha action, to fazenu assim:
PesquisaClienteForm p = (PesquisaClienteForm)form;
DAO<Cliente> dao = new DAO<Cliente>(Cliente.class);
List<Cliente> clientes = dao.buscaPorNome(p.getNome());
req.setAttribute("clientes", clientes);
minha PesquisaClienteForm:
public class PesquisaClienteForm extends ActionForm{
private String nome;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
preencho o formulario na jsp para realizar a busca, e quando clico em pesquisar, ta dando a seguinte exception:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: not an association: nome
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
org.hibernate.QueryException: not an association: nome
org.hibernate.loader.criteria.CriteriaQueryTranslator.getPathEntityName(CriteriaQueryTranslator.java:198)
org.hibernate.loader.criteria.CriteriaQueryTranslator.createCriteriaEntityNameMap(CriteriaQueryTranslator.java:175)
org.hibernate.loader.criteria.CriteriaQueryTranslator.<init>(CriteriaQueryTranslator.java:81)
org.hibernate.loader.criteria.CriteriaLoader.<init>(CriteriaLoader.java:69)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:1238)
org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:299)
br.com.marcelo.hibernate.DAO.buscaPorNome(DAO.java:61)
br.com.marcelo.action.PesquisaClienteAction.execute(PesquisaClienteAction.java:24)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.8 logs.
Apache Tomcat/5.5.8
Alguém pode me ajudar?
Obrigado…