SQLException: com.mysql.jdbc.Driver

8 respostas
K45T

OLHA GALERA !

opa é o seguinte eu estou estudando com a apostilha da caelum fj21.

tipo eu sei que as clases e todas funcionam mais por conta de ums erros da jee não poder usar generics.

pois bem, eu retirei todo o cod de generics aqui

agora esta me retornando o erro :

Exception in thread "main" java.sql.SQLException: com.mysql.jdbc.Driver
        at com.br.jdbc.ConnectonFatory.getConnection(ConnectonFatory.java:31)
        at com.br.jdbc.ContatoDAO.<init>(ContatoDAO.java:34)
        at com.br.jdbc.TestaListaDAO.main(TestaListaDAO.java:24)

o cod que gera o erro é esse:

public static void main( String args[] ) throws SQLException {
       ContatoDAO dao = new ContatoDAO();
       
       // List contatos = dao.getLista();
       
       for ( int i = 0; i < dao.getLista().size(); i++ ) {
           Contato c = ( Contato ) dao.getLista().get(i);
           System.out.print( c.getNome() + "/t" );
           System.out.print( c.getEmail() + "\t" );
           System.out.print( c.getEndereco() + "\t" + "\n\n" );
           
       }
   }

que apota pra qui:

public static Connection getConnection()  throws SQLException {
        try {
        Class.forName( "com.mysql.jdbc.Driver");
        System.out.println( "Connectaded" );
        return DriverManager.getConnection("jdbc:mysql://localhost/java", "root", "kaspil" );  
        } catch ( ClassNotFoundException e ) {
            throw new SQLException( e.getMessage() );
        }

especificamnete nessa linhaa

throw new SQLException( e.getMessage() );

alguém pode me ajudar !!

o que será que esta acontecendo ???

8 Respostas

kaique

Cara, se não me engano o código não está funcionando pois o driver do mysql não está no classpath da aplicação. Repare que o stacktrace está apontando uma SQLException, mas isso só ocorre porque você está lançando uma no tratamento de uma ClassNotFOundException…
Coloca o driver no classpath da aplicação e tenta dinovo…

[]'s.

furutani

Olá

Por que você fez isso aqui?

catch ( ClassNotFoundException e ) { throw new SQLException( e.getMessage() ); }

O mais correto é você lançar uma exception sua, por que ClassNotFoundException não tem nada haver com SQLException, só vai te confundir.

K45T

olha é o seguinte quando eu coloco esse mesmo cód com generics ele funciona muito bem !

só que para rodar esse programa eu tenhu que usar o java 1.4 que não aceita genercs entendeu ???

seria interessante colocar os o cod dos tes arquivos para análise

K45T

aqui o todo o pacote.
ta sem o drive ok!

J

O erro esta nesta linha:

PreparedStatement stmt = con.prepareStatement( "insert into contato (nome,email,endereco) value (?,?,?" );

esta faltando o parentese final da query

PreparedStatement stmt = con.prepareStatement( "insert into contato (nome,email,endereco) value (?,?,?)" );
jmarc1456

po cara
to na mesma situação e com a mesma apostila, trabalhando com o Eclipse na 3.2, mysql 5.0, conector myql 5.1.5(baixei do site hoje, fresquinho - lembrando que ja está add no built do Eclipse )
o meu está com o “)”(parênteses) no final, de acordo com o que a nossa colega Java++ explica, e ta na mema zica, o erro persiste, coloquei as classes no WEB-INF/src/classesdb e seto elas no

<jsp:useBean id=“dao” scope=“request” class=“classdb.ContatoDAO” />

o mysql ta rodando normal
e o tomcat também

erro:
org.apache.jasper.JasperException: An exception occurred processing JSP page /lista-elegante.jsp at line 3

1: <%@ taglib uri=<a href="http://java.sun.com/jsp/jstl/core">http://java.sun.com/jsp/jstl/core</a>” prefix=“c” %>

2: 

3: <jsp:useBean id=“dao” scope=“request” class=“classdb.ContatoDAO” />

4: 

5: 

6:
Stacktrace:

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:524)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause

javax.servlet.ServletException: java.sql.SQLException: org.gjt.mm.mysql.Driver

org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)

org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)

org.apache.jsp.lista_002delegante_jsp._jspService(lista_002delegante_jsp.java:87)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause

java.sql.SQLException: org.gjt.mm.mysql.Driver

classdb.ConnectionFactory.getConnection(ConnectionFactory.java:12)

classdb.ContatoDAO.(ContatoDAO.java:12)

org.apache.jsp.lista_002delegante_jsp._jspService(lista_002delegante_jsp.java:64)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)

javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

alguém pode nos ajudar, to desesperado pra aprender esta tecnologia
té mais
[]

jmarc1456

rapaz

desculpa ae
falha grave minha
ja resolvi o meu problema
solução cretina que resolveu o problema:

colocar o jar do mysql connector na WEB-INF\lib do projeto

té mais
precisando ae
té mais

jmarc1456

Faz um teste e verifica se resolve o seu pobremim aí

té mais colega
precisando
tamo aí

Criado 22 de agosto de 2007
Ultima resposta 23 de nov. de 2007
Respostas 8
Participantes 5