Mais um problema de conexão com o MySQL

5 respostas
M

Olá, estou iniciando meu aprendizado com java e não manjo nada de MySQL ainda.

Estou usando a apostila da Caelum para os exercícios, criei o primeiro projeto jdbc e consegui conectar e gravar os dados no banco de dados ok.

Fui fazer o outro exercício na agora com web, para gravar os dados de um formulário no banco de dados, porém estou com o erro HTTP Status 500 - java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3307/fj21.

Já vi que alguns usuários também tiveram o mesmo problema, tentei seguir as dicas e mesmo assim continuo com o mesmo problema.

Segue abaixo um screen da tela do Eclipse:

e a tela do erro no navegador:

Quem puder me ajudar eu agradeço!!

5 Respostas

fabiocortolan

Vc adicionou o driver do mysql à sua biblioteca?

freakazoid

Opa!

Botão direito no driver do mySql >Build Path> Add Build Path

Abs!

M

ola, deletei o projeto e fiz com calma desde o começo, agora deu certo!!! Nao sei onde eu tinha errado…

Obrigado!!

R

Pessoal estou com um problema ao inserir dados em um banco sql. Quando estava tudo um uma única classe estava tudo ok, porem eu comecei a separar as classes para melhorar o projeto e não consigo achar onde esta ocorrendo o erro.

Segue as classes.

Classe Cliente

package bean;

/**
 *
 * @author Ricardo
 */
public class FazaCliente {
    private String Codigo;
    private String Nome;
    private String Endereco;
    private String Cidade;
    private String Cep;
    private String Estado;
    private String IE;
    private String CNPJ;

    public String getCodigo() {
        return Codigo;
    }

    public void setCodigo(String Codigo) {
        this.Codigo = Codigo;
    }

    public String getNome() {
        return Nome;
    }

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

    public String getEndereco() {
        return Endereco;
    }

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

    public String getCidade() {
        return Cidade;
    }

    public void setCidade(String Cidade) {
        this.Cidade = Cidade;
    }

    public String getCep() {
        return Cep;
    }

    public void setCep(String Cep) {
        this.Cep = Cep;
    }

    public String getEstado() {
        return Estado;
    }

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

    public String getIE() {
        return IE;
    }

    public void setIE(String IE) {
        this.IE = IE;
    }

    public String getCNPJ() {
        return CNPJ;
    }

    public void setCNPJ(String CNPJ) {
        this.CNPJ = CNPJ;
    }
    
    
}

Classe View - Botao Salvar

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
        
        try {
            
            if (jTextField8.getText().equals("")) {
            Connection conn = ConexaoBancoDados.getConexao();
            PreparedStatement stmt = null;
            stmt = conn.prepareStatement(query);
            FazaCliente cliente = new FazaCliente();
            cliente.setNome(this.jTextField1.getText());
            cliente.setEndereco(this.jTextField2.getText());
            cliente.setCidade(this.jTextField3.getText());
            cliente.setCep(this.jTextField4.getText());
            cliente.setEstado(this.jTextField5.getText());
            cliente.setIE(this.jTextField6.getText());
            cliente.setCNPJ(this.jTextField7.getText());
            
	    FazaControleDAO in = new FazaControleDAO();
            in.inserir(cliente);                
            }
        } catch (Exception ex) {
            Logger.getLogger(FazaCadClienteView.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

Classe DAO - inclusão

package controles;

import bean.FazaCliente;
import java.sql.*;
import javax.swing.JOptionPane;

/**
 *
 * @author Ricardo
 */
public class FazaControleDAO {
    
    public void inserir (FazaCliente cli) throws Exception{
        
        try{
            String query;
            Connection conn = ConexaoBancoDados.getConexao();
            PreparedStatement stmt;
            
            if (conn == null) {   
            System.out.println("Erro");   
            }

            //String para inserir no banco
            query = "INSERT INTO Clientes (Nome,Endereco,Cidade,Cep,Estado,IE,CNPJ) VALUES (?,?,?,?,?,?,?)";
            stmt = conn.prepareStatement(query);
	    stmt.setString(1,cli.getNome());
            stmt.setString(2,cli.getEndereco());
            stmt.setString(3,cli.getCidade());
            stmt.setString(4,cli.getCep());
            stmt.setString(5,cli.getEstado());
            stmt.setString(6,cli.getIE());
            stmt.setString(7,cli.getCNPJ());
            
            
	    int recordsUpdated = stmt.executeUpdate();
	    JOptionPane.showMessageDialog(null, recordsUpdated + "registros incluidos com sucesso OK!!! ");
                
            } catch (SQLException e){   
            System.out.println ("Erro na comunicação do SQL" + e);   
            }
    }
R

Segue o erro

SEVERE: null

java.sql.SQLException: SQL String can not be NULL

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)

at com.mysql.jdbc.PreparedStatement.(PreparedStatement.java:930)

at com.mysql.jdbc.JDBC4PreparedStatement.(JDBC4PreparedStatement.java:48)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:525)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

at com.mysql.jdbc.PreparedStatement.getInstance(PreparedStatement.java:872)

at com.mysql.jdbc.ConnectionImpl.clientPrepareStatement(ConnectionImpl.java:1490)

at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4253)

at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4152)

at vizualizacao.FazaCadClienteView.jButton1ActionPerformed(FazaCadClienteView.java:255)

at vizualizacao.FazaCadClienteView.access$000(FazaCadClienteView.java:19)

at vizualizacao.FazaCadClienteView$1.actionPerformed(FazaCadClienteView.java:95)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)

at java.awt.Component.processMouseEvent(Component.java:6505)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)

at java.awt.Component.processEvent(Component.java:6270)

at java.awt.Container.processEvent(Container.java:2229)

at java.awt.Component.dispatchEventImpl(Component.java:4861)

at java.awt.Container.dispatchEventImpl(Container.java:2287)

at java.awt.Component.dispatchEvent(Component.java:4687)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)

at java.awt.Container.dispatchEventImpl(Container.java:2273)

at java.awt.Window.dispatchEventImpl(Window.java:2719)

at java.awt.Component.dispatchEvent(Component.java:4687)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)

at java.awt.EventQueue.access$200(EventQueue.java:103)

at java.awt.EventQueue$3.run(EventQueue.java:682)

at java.awt.EventQueue$3.run(EventQueue.java:680)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)

at java.awt.EventQueue$4.run(EventQueue.java:696)

at java.awt.EventQueue$4.run(EventQueue.java:694)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:155)

at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:182)

at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:221)

at java.security.AccessController.doPrivileged(Native Method)

at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:219)

at java.awt.Dialog.show(Dialog.java:1077)

at java.awt.Component.show(Component.java:1651)

at java.awt.Component.setVisible(Component.java:1603)

at java.awt.Window.setVisible(Window.java:1014)

at java.awt.Dialog.setVisible(Dialog.java:1003)

at vizualizacao.FazaPrincipal.jMenuItem1ActionPerformed(FazaPrincipal.java:121)

at vizualizacao.FazaPrincipal.access$000(FazaPrincipal.java:11)

at vizualizacao.FazaPrincipal$1.actionPerformed(FazaPrincipal.java:58)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)

at javax.swing.AbstractButton.doClick(AbstractButton.java:376)

at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)

at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)

at java.awt.Component.processMouseEvent(Component.java:6505)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)

at java.awt.Component.processEvent(Component.java:6270)

at java.awt.Container.processEvent(Container.java:2229)

at java.awt.Component.dispatchEventImpl(Component.java:4861)

at java.awt.Container.dispatchEventImpl(Container.java:2287)

at java.awt.Component.dispatchEvent(Component.java:4687)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)

at java.awt.Container.dispatchEventImpl(Container.java:2273)

at java.awt.Window.dispatchEventImpl(Window.java:2719)

at java.awt.Component.dispatchEvent(Component.java:4687)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)

at java.awt.EventQueue.access$200(EventQueue.java:103)

at java.awt.EventQueue$3.run(EventQueue.java:682)

at java.awt.EventQueue$3.run(EventQueue.java:680)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)

at java.awt.EventQueue$4.run(EventQueue.java:696)

at java.awt.EventQueue$4.run(EventQueue.java:694)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

CONSTRUÍDO COM SUCESSO (tempo total: 26 segundos)

Criado 14 de maio de 2013
Ultima resposta 15 de mai. de 2013
Respostas 5
Participantes 4