[Resolvido] Erro de banco de dados no arquivo JAR

1 resposta
michetti

Boa noite galera, em meu computador eu criava o arquivo JAR, passava para outra computadores e funcionava normal, esses dias comprei um notebook e passei tudo para ele. Porém agora quando eu crio o JAR e executo ele nada relacionado com banco de dados funciona.. Procurei, procurei, procurei vi várias "soluções" e nenhuma resolveu a minha, então logo estou aqui pedindo a ajuda de vocês amigos do GUJ.

Resposta para algumas perguntas..

Sim o jar do MYSQL foi gerado na class-path
O programa roda normalmente no Netbeans

Segue o Stacktrace

run:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
	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:526)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
	at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:355)
	at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2461)
	at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2498)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2283)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:822)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
	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:526)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:404)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)
	at java.sql.DriverManager.getConnection(DriverManager.java:571)
	at java.sql.DriverManager.getConnection(DriverManager.java:215)
	at DAO.Conexao.<init>(Conexao.java:26)
	at View.Splash$1.run(Splash.java:31)
Caused by: java.net.ConnectException: Connection refused: connect
	at java.net.DualStackPlainSocketImpl.connect0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:579)
	at java.net.Socket.connect(Socket.java:528)
	at java.net.Socket.<init>(Socket.java:425)
	at java.net.Socket.<init>(Socket.java:241)
	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:259)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:305)
	... 16 more

Minha string de conexão

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAO;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;

public class Conexao {
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String DATABASE_URL = "jdbc:mysql://127.0.0.1/salaobeleza";
    public static String ok = "ok";
    public static Connection con = null;
    Statement stat = null;

    public Conexao(){
        try{
            //Carrega classe de driver do Banco de Dados
            Class.forName(JDBC_DRIVER);
            //Estabelece conexão com o banco de dados
            con = DriverManager.getConnection(DATABASE_URL,"root","");
            //Criar Stament para consultar banco de dados
            stat = con.createStatement();
            ok = "ok";
        }
        catch(SQLException sqlException){
            sqlException.printStackTrace();
            ok="no";
            JOptionPane.showMessageDialog(null, sqlException);
        }
        catch(ClassNotFoundException classNotFound){
            classNotFound.printStackTrace();
            ok="no";
            JOptionPane.showMessageDialog(null, classNotFound);
        }
    }

    public ResultSet Consulta(String texto) throws SQLException{
        ResultSet rs = null;
        //Consulta o banco de dados
        rs = stat.executeQuery(texto);
        return rs;
    }

    public void Atualiza(String texto) throws SQLException{
        //Inserir no banco de dados
        stat.executeUpdate(texto);
    }

    public void Exit() throws SQLException{
         stat.close();
         con.close();
    }


}

1 Resposta

michetti

Galera não sei o motivo mas o uso de um grupo doméstico estava gerando este problema… não me pergunte o por quê rsrsrs
Removi o grupo de trabalho e reiniciei a máquina e tudo voltou a funcionar.

Grato!!

Criado 20 de janeiro de 2014
Ultima resposta 20 de jan. de 2014
Respostas 1
Participantes 1