Estou rodando uma aplicação web simples, as páginas jsp simples, tudo bem, mas qdo chamo a página de cadastro, deparo com esse erro:
The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: #{CarroFacade.createSetup}: javax.faces.el.MethodNotFoundException: createSetup
javax.faces.webapp.FacesServlet.service(FacesServlet.java:209)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
Uma classe é o contrutor só isso e a outra faz a persistencia em …Facade.java. Segue ela abaixo:
package beans;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import org.hibernate.Session;
import org.hibernate.Transaction;
import util.HibernateUtil;
/**
-
@netbeans.hibernate.facade beanClass=beanslocadora.Carro */ public class CarroFacade { private Carro carro; Session session;
public void saveCarro(Carro carro) { try{ HibernateUtil.beginTransaction(); Session session = HibernateUtil.currentSession(); session.save(carro); HibernateUtil.commitTransaction(); addMessage(“Carro salvo com sucesso.”); }catch(Exception e1){ addMessage(“Erro ao cadastrar carro!”); }finally{HibernateUtil.closeSession();} }
// generate é apenas para um teste public void generate(){ Carro palio= new Carro(); palio.setPlaca(“ABC 3078”); palio.setSituacao((short)0); palio.setDescricao(“Palio 2004”); palio.setKm(100); palio.setPrecoKm((float)0.12); palio.setTaxaDiaria(12); palio.setObservacao(“Revisado 25.000km”); this.saveCarro(palio); }
public String criaCarro(Carro carro){ if (this.findByPlaca(carro.getPlaca())==null) {this.saveCarro(carro); return “carro_criado”; }else { addMessage(“Carro com placa já existente!”); return “carro_create”; } }
// Usando o atributo carro public String criaCarro(){ if (this.findByPlaca(carro.getPlaca())==null) {this.saveCarro(this.getCarro()); return “carro_criado”; }else { addMessage(“Carro com placa já existente!”); return “carro_create”; } }
public CarroFacade(){}
public Carro getCarro() { return carro; }
public void setCarro(Carro carro) { this.carro = carro; }
public String createSetup() {
this.setCarro(new Carro());
return “carro_create”;
}
public Carro findByPlaca(String placa) {
try{
Session session = HibernateUtil.currentSession();
/* org.hibernate.Query query = session.createQuery(
" select carro " +
" from " +
" Carro as carro " +
" where " +
" carro.placa = ? "); */
<a href="//query.setParameter">//query.setParameter</a>(0, placa);
String query1 =“from Carro c where c.placa = :placa”;
org.hibernate.Query query = session.createQuery(query1).setString(“placa”, placa).setMaxResults(1);
Carro carro =(Carro) query.uniqueResult();
return carro;
}catch(Exception e){ addMessage(“Erro ao localizar um carro!”);
return null;
}
}
public List getCarros() {
try{
HibernateUtil.beginTransaction();
Session session = HibernateUtil.currentSession();
org.hibernate.Query query = session.createQuery(
“select object(o) from Carro as o”);
List list= query.list();
HibernateUtil.commitTransaction();
HibernateUtil.closeSession();
return list;
}catch(Exception e1){
addMessage("Erro em listar carros!");
return null;
}
}
public String destroy() {
try{
HibernateUtil.beginTransaction();
Session session = HibernateUtil.currentSession();
Carro carro = getCarroFromRequestParam();
session.delete(carro);
HibernateUtil.commitTransaction();
addMessage(“Carro foi removido com sucesso.”);
} catch (Exception ex) {
addMessage(“Erro ao remover carro!”);
} finally{HibernateUtil.closeSession();}
return “carro_list”;
}
public Carro getCarroFromRequestParam() {
ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
HttpServletRequest request = (HttpServletRequest)ec.getRequest();
String param = request.getParameter("placa");
System.out.println("placa em getCarroFromRqPar="+param);
return this.findByPlaca(param);
}
public static void addMessage(String msg) {
FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, msg);
FacesContext fc = FacesContext.getCurrentInstance();
fc.addMessage(null, facesMsg);
}
public String editSetup() {
setCarroFromRequestParam();
return “carro_edit”;
}
public void setCarroFromRequestParam() {
Carro carro = getCarroFromRequestParam();
if(carro==null) System.out.println(“carro nulo”);
setCarro(carro);
}
public String edit() {
try{
HibernateUtil.beginTransaction();
Session session = HibernateUtil.currentSession();
session.merge(carro);
HibernateUtil.commitTransaction();
addMessage("Carro foi atualizado com sucesso.");
} catch (Exception ex) {
try {
addMessage("Erro ao atualizar carro!");
} catch (Exception e) {System.out.println("erro em edit carro");}
}finally{ HibernateUtil.closeSession(); }
return "carro_list";
}
}// fim da classe CarroFacade
Alguem pode me ajudar qual a origem do erro e como soluciona-lo?? Seria problema de path apenas ou algum outro!!