Probleminha bobo ao conectar no banco

Estou usando o [color=blue]IceFaces[/color] e estou tendo um problema que não entendi o porque sendo que, já fiz isso em outro projeto e não deu erro algum…

Estou usando o netbeans 6.1 e o tomcat 6.
Essa é a problemática!!!

public class FabricaConexao {
    
    public static Connection getConnection()throws Exception{
        try{
            Class.forName("com.mysql.jdbc.Driver"); //Dá erro nessa linha e já parte para excecao!!!
            return DriverManager.getConnection("jdbc:mysql://localhost/Aplicacao","root","123");
        }catch(Exception e){
            throw new Exception(e.getMessage());
        }
    }
    
...

}

Esse é meu Inserir.jsp

<jsp:root version="2.1" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:ice="http://www.icesoft.com/icefaces/component" xmlns:jsp="http://java.sun.com/JSP/Page">
    <jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
    <f:view>
        <ice:outputHtml id="outputHtml1">
            <ice:outputHead id="outputHead1">
                <ice:outputStyle href="./resources/stylesheet.css" id="outputStyle1"/>
                <ice:outputStyle href="./xmlhttp/css/xp/xp.css" id="outputStyle2"/>
            </ice:outputHead>
            <ice:outputBody id="outputBody1" style="-rave-layout: grid">
                <ice:form id="form1">
                    <ice:outputLabel id="..." value="Exemplo de Aplicacao IceFaces - Inserir"/>
                    <ice:inputText id="ipNome" style="..." value="#{Inserir.nome}"/>
                    <ice:inputText id="ipEnd" style="..." value="#{Inserir.endereco}"/>
                    <ice:inputText id="ipIdade" style="..." value="#{Inserir.idade}"/>
                    <ice:inputText id="ipEstado" style="..." value="#{Inserir.estado}"/>
                    <ice:commandButton action="#{Inserir.InserirDados}" id="button1" value="Inserir"/>
                </ice:form>
            </ice:outputBody>
        </ice:outputHtml>
    </f:view>
</jsp:root>

Esse é o bean:

public class Inserir extends AbstractPageBean {
    
    private int __placeholder;
    
    private String nome = null;
    private String endereco = null;
    private String idade = null;
    private String estado = null;
    
    private void _init() throws Exception {
    }

    
    public Inserir() {
    }

    
    @Override
    public void init() {
        super.init();

        try {
            _init();
        } catch (Exception e) {
            log("Inserir Initialization Failure", e);
            throw e instanceof FacesException ? (FacesException) e: new FacesException(e);
        }
    }

    
    @Override
    public void preprocess() {
    }

    
    @Override
    public void prerender() {
    }

    
    @Override
    public void destroy() {
    }

    
    protected ApplicationBean1 getApplicationBean1() {
        return (ApplicationBean1) getBean("ApplicationBean1");
    }

    protected SessionBean1 getSessionBean1() {
        return (SessionBean1) getBean("SessionBean1");
    }

    /**
     * <p>Retornar uma referência para o Bean de dados limitados.</p>
     *
     * @retorna uma referência para o bean de dados limitados
     */
    protected RequestBean1 getRequestBean1() {
        return (RequestBean1) getBean("RequestBean1");
    }

    public String InserirDados() throws Exception {
        
        Pessoa cliente = new Pessoa(nome, endereco, idade, estado);
        PessoaDAO clienteDao = new PessoaDAOimp();
        
        clienteDao.novo(cliente);
        
        return "DadosInseridos";
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getIdade() {
        return idade;
    }

    public void setIdade(String idade) {
        this.idade = idade;
    }

    public String getEstado() {
        return estado;
    }

    public void setEstado(String estado) {
        this.estado = estado;
    }

    public String getEndereco() {
        return endereco;
    }

    public void setEndereco(String endereco) {
        this.endereco = endereco;
    }

}

Minha classe DAO:

public class PessoaDAOimp implements PessoaDAO{
    
    private Connection conexao;
    public PessoaDAOimp()throws Exception{
        try{
            this.conexao = FabricaConexao.getConnection();
        }catch(Exception e){
            throw new Exception("Problema na hora de criar a conexao!!!\n"
                    + e.getMessage());
        }
    }
    


    public void novo(Pessoa pessoa) throws Exception {
        
        PreparedStatement ps = null;
        Connection conex = null;
        
        if(pessoa == null)
            throw new Exception("Valor nulo!!!!");
        
        try{
            String sql = "INSERT INTO pessoa (nome, endereco, idade, estado) VALUES (?,?,?,?)";
            conex = conexao;
            ps = conex.prepareStatement(sql);
            
            System.out.println(pessoa.getNome());
            ps.setString(1, pessoa.getNome());
            
            System.out.println(pessoa.getEndereco());
            ps.setString(2, pessoa.getEndereco());
            
            System.out.println(pessoa.getIdade());
            ps.setInt(3, Integer.parseInt(pessoa.getIdade()));
            
            System.out.println(pessoa.getEstado());
            ps.setString(4, pessoa.getEstado());
            
            ps.executeUpdate();
        }catch(SQLException e){
            throw new Exception("Erro ao inserir dados!!!");
        }finally{
           FabricaConexao.closeConnection(conex, ps);
        }
}

Você não colocou a mensagem de erro, mas só por desencargo: tem certeza que o driver mysql está no seu classpath?

Com certeza!
Até já usei essa mesma classe para conectar outro projeto a outro banco… :cry:

[quote=moacirjava]
Até já usei essa mesma classe para conectar outro projeto a outro banco… :cry: [/quote]
Isso não quer dizer muito. você pode ter configurado o classpath corretamente no outro projeto, mas não nesse.

De qualquer modo, qual é a mensagem de erro que você está recebendo? Talvez com ela fique mais fácil ajudar…

04/10/2008 15:03:50 org.apache.catalina.core.ApplicationContext log
SEVERE: #{Inserir.InserirDados}: java.lang.Exception: Problema na hora de criar a conexao!!!
com.mysql.jdbc.Driver
javax.faces.FacesException: #{Inserir.InserirDados}: java.lang.Exception: Problema na hora de criar a conexao!!!
com.mysql.jdbc.Driver
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:107)
        at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:69)
        at javax.faces.component.UICommand.broadcast(UICommand.java:383)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
        at com.icesoft.faces.webapp.http.core.JsfLifecycleExecutor.apply(JsfLifecycleExecutor.java:17)
        at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.renderCycle(ReceiveSendUpdates.java:54)
        at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.service(ReceiveSendUpdates.java:42)
        at com.icesoft.faces.webapp.http.core.ViewBoundServer.service(ViewBoundServer.java:65)
        at com.icesoft.faces.webapp.http.core.RequestVerifier.service(RequestVerifier.java:44)
        at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer$Matcher.serviceOnMatch(PathDispatcherServer.java:50)
        at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:19)
        at com.icesoft.faces.webapp.http.servlet.ThreadBlockingAdaptingServlet.service(ThreadBlockingAdaptingServlet.java:19)
        at com.icesoft.faces.webapp.http.servlet.EnvironmentAdaptingServlet.service(EnvironmentAdaptingServlet.java:63)
        at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet.service(MainSessionBoundServlet.java:139)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.service(SessionDispatcher.java:53)
        at com.icesoft.faces.webapp.http.servlet.PathDispatcher$Matcher.serviceOnMatch(PathDispatcher.java:52)
        at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:29)
        at com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:82)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:46)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)
Caused by: javax.faces.el.EvaluationException: java.lang.Exception: Problema na hora de criar a conexao!!!
com.mysql.jdbc.Driver
        at com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:91)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
        ... 38 more

Dêem uma olhada na hierarquial do projeto…