E ai pessoal blz?
Estou tendo problemas para integrar o struts com o hibernate, quando testo os dois separados vai tudo bem, mais quando na classe Action do Struts chamo o insere do ClienteDAO da erro.
Abaixo estou colocando o código fonte:
ClienteAction
package br.com.cliente.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import br.com.cliente.bean.Cliente;
import br.com.cliente.dao.ClienteDAO;
import br.com.cliente.form.ClienteForm;
public class ClienteAction extends DispatchAction {
private ClienteDAO dao;
public ClienteAction() {
// TODO Auto-generated constructor stub
dao = new ClienteDAO();
}
public ActionForward cadastrar(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) {
ClienteForm funForm = ((ClienteForm) form);
Cliente bean = funForm.getBean();
bean.setStatus("ATIVO");
try {
dao.insere(bean);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return (mapping.findForward("cadastrar"));
}
...Tem mais codigo mais para os outros metodos
ClienteDAO
package br.com.cliente.dao;
import java.util.Iterator;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import br.com.cliente.bean.Cliente;
public class ClienteDAO {
private SessionFactory sf;
public ClienteDAO() {
sf = new Configuration().addClass(Cliente.class).buildSessionFactory();
}
public void insere(Cliente cli) throws Exception {
Session sessao = sf.openSession();
Transaction t = sessao.beginTransaction();
sessao.save(cli);
sessao.flush(); //sincronia da aplicação com o SGBD
t.commit();
sessao.close();
}
...Tem mais codigo mais para os outros metodos
ClienteTeste (Soh para testar se o hibernate esta funcionado, AQUI DEU CERTO)
package br.com.cliente.dao;
import javax.swing.JOptionPane;
import br.com.cliente.bean.Cliente;
public class ClienteTeste {
private Cliente cli;
private ClienteDAO pers;
public ClienteTeste() {
// TODO Auto-generated constructor stub
cli = new Cliente();
pers = new ClienteDAO();
}
public void cadastrar(){
cli.setCodigo(Integer.parseInt(JOptionPane.showInputDialog("Informe o Codigo:")));
cli.setNome(JOptionPane.showInputDialog("Informe o Nome:"));
cli.setTelefone(JOptionPane.showInputDialog("Informe o Telefone:"));
cli.setCidade(JOptionPane.showInputDialog("Informe o Cidade:"));
cli.setEstado(JOptionPane.showInputDialog("Informe o Estado:"));
cli.setRua(JOptionPane.showInputDialog("Informe o Rua:"));
cli.setBairro(JOptionPane.showInputDialog("Informe o Bairro:"));
cli.setComplemento(JOptionPane.showInputDialog("Informe o Complemento:"));
cli.setCpf(JOptionPane.showInputDialog("Informe o seu CPF:"));
cli.setRg(JOptionPane.showInputDialog("Informe o RG:"));
cli.setUsuario(JOptionPane.showInputDialog("Informe o Usuario:"));
cli.setSenha(JOptionPane.showInputDialog("Informe a sua Senha:"));
cli.setStatus("ATIVO");
try {
pers.insere(this.cli);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
...Tem mais codigo mais para os outros metodos
Esse é o erro que da na minha pagina
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoClassDefFoundError: org/hibernate/Session
br.com.cliente.action.ClienteAction.<init>(ClienteAction.java:18)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
java.lang.reflect.Constructor.newInstance(Constructor.java:494)
java.lang.Class.newInstance0(Class.java:350)
java.lang.Class.newInstance(Class.java:303)
org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:143)
org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:292)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:230)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
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.11 logs.
Se alguém puder me ajudar eu agradeço
Valeu pessoal