Erro em Statement

14 respostas
wanderley.drumond

Pessoal tenho esse método para gerar a String SQL

public boolean inserir_usuario(char[] conf_senha, char[] senha, String login, String email, String nomeCompleto, String endereco_ip, String endereco_mac){
        String log = login;
        String mail = email;
        String nome = nomeCompleto;
        String ende_ip = endereco_ip;
        String ende_mac = endereco_mac;
        char[] passw = senha;
        char[] conf_passw = conf_senha;
        
        String valores = "INSERT into cliente(Login, cliente_email, nome_completo, endereco_ip, endereco_mac, senha, conf_senha) values(('"+ log +"'), ('"+ mail +"'), ('"+ nome +"'), ('"+ ende_ip +"'), ('"+ ende_mac +"'), ('"+ passw +"'), ('"+ conf_passw +"'))";
try {
            Class.forName(driverPath);
            
        } catch (java.lang.ClassNotFoundException e) {
            System.err.print("ClassNotFoundException: ");
            System.err.println(e.getMessage());
        }
        
        try {
            Connection conn = DriverManager.getConnection(url);
            Statement stmt = conn.createStatement();
            stmt.executeUpdate( valores );
            
            stmt.close();
            conn.close();
            
            return true;
        } catch (SQLException ex) {
            System.err.println("SQLException: " + ex.getMessage());
        }
        return false;
    }

Em outra classe tenho isso no meu actionPerformed:

conf_senha = pf_confirmeSenha.getPassword();
            senha = pf_senha.getPassword();
            login = tf_login.getText();
            email = tf_email.getText();
            nomeCompleto = tf_nomeCompleto.getText();
            endereco_ip = obter_ip.toString();
            endereco_mac = obter_mac.toString();
            InsereDados inserir = new InsereDados();
            insere_dados.inserir_usuario(conf_senha, senha,  login, email, nomeCompleto, endereco_ip, endereco_mac);
            
            JOptionPane.showMessageDialog(null,"Usuário cadastrado com sucesso", "Cadastro concluído", JOptionPane.INFORMATION_MESSAGE);

Trata-se de um botão, que ao pressionar ele deve inserir esses dados no banco.

Só que dá o erro:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

Alguém saberia me dizer pq disso?

14 Respostas

kaique

Em algum ponto do seu código você está tentando utilizar um objeto que está nulo. Cola aqui toda a stackTrace do seu erro que dá pra ver exatamente o ponto do problema…

[]'s.

wanderley.drumond

Tá aí:

<blockquote>Exception in thread AWT-EventQueue-0 java.lang.NullPointerException

at theencrypter.TelaCadastro.bt_confirmarActionPerformed(TelaCadastro.java:262)

at theencrypter.TelaCadastro.access$200(TelaCadastro.java:15)

at theencrypter.TelaCadastro$3.actionPerformed(TelaCadastro.java:125)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

</blockquote>
_Renatu

Voce consegue dizer pra gente qual é a linha 262 do arquivo TelaCadastro.java ?

Grinvon

Bom, uma coisa é certa, o stack está mostrando que o objeto que está sem referência é um objeto não do statement, provavelmente algum JComponent que você esqueceu de criar sua referência.

wanderley.drumond

Desculpem por isso mas acho melhor eu postar o código inteiro:

/*
 * TelaCadastro.java
 *
 * Created on 2 de Setembro de 2007, 14:23
 */

package theencrypter;

import javax.swing.JOptionPane;

/**
 *
 * @author  Wanderley
 */
public class TelaCadastro extends javax.swing.JFrame {
    
    /** Creates new form TelaCadastro */
     public TelaCadastro(TelaPrincipal tela_principal, TelaLogin tela_login) {
        //Instanciando os frames relacionados
        this.tela_principal = tela_principal;
        this.tela_login = tela_login;
        this.setVisible(false);
        setSize(500, 410);
        // centraliza a janela    
        setLocationRelativeTo(null);
        initComponents();
        
     /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    }
    private String valor = "";
    private char[] conf_senha;
    private char[] senha;
    private String login;
    private String email;
    private String nomeCompleto;
    private String endereco_ip;
    private String endereco_mac;
    
    // <editor-fold defaultstate="collapsed" desc=" Código Gerado ">                          
    private void initComponents() {
        lb_nomeCompleto = new javax.swing.JLabel();
        lb_email = new javax.swing.JLabel();
        lb_enderecoIP = new javax.swing.JLabel();
        lb_enderecoMAC = new javax.swing.JLabel();
        lb_login = new javax.swing.JLabel();
        lb_senha = new javax.swing.JLabel();
        lb_confirmaSenha = new javax.swing.JLabel();
        bt_limpar = new javax.swing.JButton();
        bt_cancelar = new javax.swing.JButton();
        bt_confirmar = new javax.swing.JButton();
        bt_obterInfomacoes = new javax.swing.JButton();
        tf_nomeCompleto = new javax.swing.JTextField();
        tf_email = new javax.swing.JTextField();
        ftf_enderecoIP = new javax.swing.JFormattedTextField();
        ftf_enderecoMAC = new javax.swing.JFormattedTextField();
        tf_login = new javax.swing.JTextField();
        pf_senha = new javax.swing.JPasswordField();
        pf_confirmeSenha = new javax.swing.JPasswordField();
        sp_separador = new javax.swing.JSeparator();
        lb_background = new javax.swing.JLabel();

        getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

        setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
        setTitle("The Encrypter - Cadastrar Cliente");
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
        setMaximizedBounds(new java.awt.Rectangle(0, 0, 0, 0));
        setResizable(false);
        lb_nomeCompleto.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_nomeCompleto.setText("Nome Completo");
        getContentPane().add(lb_nomeCompleto, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 60, -1, -1));

        lb_email.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_email.setText("E-mail");
        getContentPane().add(lb_email, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 90, -1, -1));

        lb_enderecoIP.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_enderecoIP.setText("Endere\u00e7o IP");
        getContentPane().add(lb_enderecoIP, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 120, -1, -1));

        lb_enderecoMAC.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_enderecoMAC.setText("Endere\u00e7o MAC");
        getContentPane().add(lb_enderecoMAC, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 150, -1, -1));

        lb_login.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_login.setText("Login");
        getContentPane().add(lb_login, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 240, -1, -1));

        lb_senha.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_senha.setText("Senha");
        getContentPane().add(lb_senha, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 270, -1, -1));

        lb_confirmaSenha.setFont(new java.awt.Font("Tahoma", 1, 14));
        lb_confirmaSenha.setText("Confirme tua senha");
        getContentPane().add(lb_confirmaSenha, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 300, -1, -1));

        bt_limpar.setForeground(new java.awt.Color(0, 0, 255));
        bt_limpar.setText("Limpar");
        bt_limpar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                bt_limparActionPerformed(evt);
            }
        });

        getContentPane().add(bt_limpar, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 350, -1, -1));

        bt_cancelar.setForeground(new java.awt.Color(255, 0, 0));
        bt_cancelar.setText("Cancelar");
        bt_cancelar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                cancela_cadastro(evt);
            }
        });

        getContentPane().add(bt_cancelar, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 350, -1, -1));

        bt_confirmar.setForeground(new java.awt.Color(0, 135, 0));
        bt_confirmar.setText("Confirmar");
        bt_confirmar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                bt_confirmarActionPerformed(evt);
            }
        });

        getContentPane().add(bt_confirmar, new org.netbeans.lib.awtextra.AbsoluteConstraints(220, 350, -1, -1));

        bt_obterInfomacoes.setForeground(new java.awt.Color(255, 153, 0));
        bt_obterInfomacoes.setText("Obter informa\u00e7\u00f5es");
        bt_obterInfomacoes.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                bt_obterInfomacoesActionPerformed(evt);
            }
        });

        getContentPane().add(bt_obterInfomacoes, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 350, -1, -1));

        tf_nomeCompleto.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tf_nomeCompletoActionPerformed(evt);
            }
        });

        getContentPane().add(tf_nomeCompleto, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 60, 230, -1));

        tf_email.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tf_emailActionPerformed(evt);
            }
        });

        getContentPane().add(tf_email, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 90, 230, -1));

        ftf_enderecoIP.setEnabled(false);
        getContentPane().add(ftf_enderecoIP, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 120, 180, -1));

        ftf_enderecoMAC.setEnabled(false);
        getContentPane().add(ftf_enderecoMAC, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 150, 180, -1));

        tf_login.setDocument(new FormatarTextField(10));
        tf_login.setDragEnabled(true);
        tf_login.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tf_loginActionPerformed(evt);
            }
        });

        getContentPane().add(tf_login, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 240, 170, -1));

        pf_senha.setDocument(new FormatarTextField(10));
        pf_senha.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pf_senhaActionPerformed(evt);
            }
        });

        getContentPane().add(pf_senha, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 270, 140, -1));

        pf_confirmeSenha.setDocument(new FormatarTextField(10));
        pf_confirmeSenha.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                pf_confirmeSenhaActionPerformed(evt);
            }
        });

        getContentPane().add(pf_confirmeSenha, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 300, 140, -1));

        sp_separador.setBackground(new java.awt.Color(0, 175, 175));
        sp_separador.setForeground(new java.awt.Color(0, 255, 255));
        getContentPane().add(sp_separador, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 210, 480, -1));

        lb_background.setIcon(new javax.swing.ImageIcon(System.getProperty("user.dir") + "//Telas//cadastro.jpg"));
        getContentPane().add(lb_background, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 500, 410));

        pack();
    }// </editor-fold>                        

    private void pf_confirmeSenhaActionPerformed(java.awt.event.ActionEvent evt) {                                                 

    }                                                

    private void pf_senhaActionPerformed(java.awt.event.ActionEvent evt) {                                         

    }                                        

    private void tf_loginActionPerformed(java.awt.event.ActionEvent evt) {                                         

    }                                        

    private void tf_emailActionPerformed(java.awt.event.ActionEvent evt) {                                         

    }                                        

    private void tf_nomeCompletoActionPerformed(java.awt.event.ActionEvent evt) {                                                

    }                                               

    private void bt_obterInfomacoesActionPerformed(java.awt.event.ActionEvent evt) {                                                   
// TODO adicione seu código de manipulação aqui:
        ObterMAC obter_mac = new ObterMAC();
        try {
            ftf_enderecoMAC.setText(obter_mac.obterMac().toString()); 
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        ftf_enderecoIP.setText(obter_ip.ObterIP().toString());
    }                                                  

    private void bt_limparActionPerformed(java.awt.event.ActionEvent evt) {                                          
// Substitui o texto corrente por espaço em branco
        tf_nomeCompleto.setText(valor);
        tf_email.setText(valor);
        tf_login.setText(valor);
        pf_senha.setText(valor);
        pf_confirmeSenha.setText(valor);
    }                                         

    private void bt_confirmarActionPerformed(java.awt.event.ActionEvent evt) {                                             
// Confirma o cadastro e fecha o frame
        if (tf_nomeCompleto.getText().equals(""))
            JOptionPane.showMessageDialog(null, "O Campo 'Nome Completo' é obrigatório portanto não pode ficar em branco", "Atenção!!!", JOptionPane.INFORMATION_MESSAGE);
        else if (tf_email.getText().equals(""))
            JOptionPane.showMessageDialog(null, "O Campo 'e-mail' é obrigatório portanto não pode ficar em branco", "Atenção!!!", JOptionPane.INFORMATION_MESSAGE);
        else if (ftf_enderecoIP.getText().equals(""))
            JOptionPane.showMessageDialog(null, "Pressione o botão 'Obter informações'", "Atenção!!!", JOptionPane.INFORMATION_MESSAGE);
        else if (tf_login.getText().equals(""))
            JOptionPane.showMessageDialog(null, "Para que teu cadastro seje efetuado é necessário escolher um login", "Atenção!!!", JOptionPane.INFORMATION_MESSAGE);
        else if (pf_senha.getPassword().equals(""))
            JOptionPane.showMessageDialog(null, "Para que teu cadastro seje efetuado é necessário entrar com uma senha", "Atenção!!!", JOptionPane.INFORMATION_MESSAGE);
        else if (pf_confirmeSenha.getPassword().equals(""))
            JOptionPane.showMessageDialog(null, "Para que teu cadastro seje efetuado é necessário confirmar tua senha", "Atenção!!!", JOptionPane.INFORMATION_MESSAGE);
        else if(pf_confirmeSenha.getText().equals(pf_senha.getText())){
            
            conf_senha = pf_confirmeSenha.getPassword();
            senha = pf_senha.getPassword();
            login = tf_login.getText();
            email = tf_email.getText();
            nomeCompleto = tf_nomeCompleto.getText();
            endereco_ip = obter_ip.toString();
            endereco_mac = obter_mac.toString();
            InsereDados inserir = new InsereDados();
            insere_dados.inserir_usuario(conf_senha, senha,  login, email, nomeCompleto, endereco_ip, endereco_mac);
            
            JOptionPane.showMessageDialog(null,"Usuário cadastrado com sucesso", "Cadastro concluído", JOptionPane.INFORMATION_MESSAGE);
        
            //Fecha o frame
            this.dispose();
            //Dá a visibilidade da Tela Principal
            tela_principal.setVisible(true);
            // Substitui o texto corrente por espaço em branco
            tf_nomeCompleto.setText(valor);
            tf_email.setText(valor);
            tf_login.setText(valor);
            pf_senha.setText(valor);
            pf_confirmeSenha.setText(valor);
            ftf_enderecoIP.setText(valor);
            ftf_enderecoMAC.setText(valor);
        }
        else
            JOptionPane.showMessageDialog(null, "Campos 'Senha' e 'Confirme senha' não conferem, favor redigite");
            pf_senha.setText(valor);
            pf_confirmeSenha.setText(valor);
    }                                            

    private void cancela_cadastro(java.awt.event.ActionEvent evt) {                                  
// Método que trata o botão de cancelar (fecha a tela corrente)
        //Fecha o frame
        this.dispose();
        //Dá visibilidade à tela de Login
        tela_login.setVisible(true);
        // Substitui o texto corrente por espaço em branco
        tf_nomeCompleto.setText(valor);
        tf_email.setText(valor);
        tf_login.setText(valor);
        pf_senha.setText(valor);
        pf_confirmeSenha.setText(valor);
    }                                 
    
    /**
     * @param args the command line arguments
     */
    //Método que permite tirar e dar visibilidade a um determinado frame
   private void ocultar (boolean x){
        this.setVisible(x);
    }
    //Método construtor do fechamento do botão
    private void close() {
        throw new UnsupportedOperationException("Saída");
    }
    
    // Declaração de variáveis - não modifique                     
    private javax.swing.JButton bt_cancelar;
    private javax.swing.JButton bt_confirmar;
    private javax.swing.JButton bt_limpar;
    private javax.swing.JButton bt_obterInfomacoes;
    private javax.swing.JFormattedTextField ftf_enderecoIP;
    private javax.swing.JFormattedTextField ftf_enderecoMAC;
    private javax.swing.JLabel lb_background;
    private javax.swing.JLabel lb_confirmaSenha;
    private javax.swing.JLabel lb_email;
    private javax.swing.JLabel lb_enderecoIP;
    private javax.swing.JLabel lb_enderecoMAC;
    private javax.swing.JLabel lb_login;
    private javax.swing.JLabel lb_nomeCompleto;
    private javax.swing.JLabel lb_senha;
    private javax.swing.JPasswordField pf_confirmeSenha;
    private javax.swing.JPasswordField pf_senha;
    private javax.swing.JSeparator sp_separador;
    private javax.swing.JTextField tf_email;
    private javax.swing.JTextField tf_login;
    private javax.swing.JTextField tf_nomeCompleto;
    // Fim da declaração de variáveis                   
    private static TelaPrincipal tela_principal;
    private static TelaLogin tela_login;
    private static ObterIP obter_ip;
    private static ObterMAC obter_mac;
    private static InsereDados insere_dados;
}
kaique

Cara, se não me engano, a variável String obter_ip não foi instanciada, ou não aponta para uma String. Em que momento você está atribuindo um valor para ela?
Para verificar se o erro é somente isso, no momento que você declarar ela, atribui um valor default para ela. Dessa forma, no momento que você for utilizar a String, mesmo que você nãotenha atribuído algum valor, o valor default será utilizado…

[]'s.

wanderley.drumond
Tenho uma classe que a define:
public class ObterIP {

    /** Creates a new instance of ObterIP */
    public static String ObterIP() {
        String ip = "";

        try {
            java.net.InetAddress i = java.net.InetAddress.getLocalHost();

            ip = i.getHostAddress();
        } catch (Exception e) {
            e.printStackTrace();
        }

        return ip;
    }
}
kaique

Cara, a chamada que você faz ao método estático retorna uma string, mas isso não faz com que a variável obter_ip seja instanciada.
o método ObterIP() é estático, por isso que não precisa existir uma instância para ele ser executado. Agora o método toString() não é estático, e no momento que ele é chamado (linha 262), a referência obter_ip está apontando para null, ou seja, não existe uma instância da classe ObterIP que esteja sendo referenciada pela variável obter_ip.
Deu pra entender o que está acontecendo??

[]'s.

wanderley.drumond

Cara, até que vc explicou muito bem mas eu num entendi direito, está muito enrolado. Qual seria a solução?

kaique

Certo…
Na sua linha 262 (onde est[a acontecendo a exception), atualmente ela est[a assim?

endereco_ip = obter_ip.toString();

Agora, troque a linha por essa?

endereco_ip = obter_ip.ObterIP();

Ou por essa:

endereco_ip = ObterIP.ObterIP();

Qualquer coisa posta…
[]'s.

wanderley.drumond

Quando fiz isso: endereco_ip = ObterIP.ObterIP();

deu esse erro:

<blockquote>Exception in thread AWT-EventQueue-0 java.lang.NullPointerException

at theencrypter.TelaCadastro.bt_confirmarActionPerformed(TelaCadastro.java:263)

at theencrypter.TelaCadastro.access$200(TelaCadastro.java:15)

at theencrypter.TelaCadastro$3.actionPerformed(TelaCadastro.java:125)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

</blockquote>

Aí tentei isso: endereco_ip = obter_ip.ObterIP();

resultado:

<blockquote>Exception in thread AWT-EventQueue-0 java.lang.NullPointerException

at theencrypter.TelaCadastro.bt_confirmarActionPerformed(TelaCadastro.java:263)

at theencrypter.TelaCadastro.access$200(TelaCadastro.java:15)

at theencrypter.TelaCadastro$3.actionPerformed(TelaCadastro.java:125)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

</blockquote>
kaique

Cara, num me leve a mal não…mas você precisa aprender a debugar seu próprio código…
Se você prestar bem atenção, a linha onde o erro foi gerado mudou…agora o problema está na linha 263:

endereco_mac = obter_mac.toString();

Ess tipo que você criou, ObterMAC, você está cometendo o mesmo erro de antes…
Leia atentamente as outras respostas e compare essa situação com a situação de antes (o erro na linha 262, que foi resolvido)…

[]'s.

wanderley.drumond

Rapaz eu modifiquei o ObterMAC também, mas o erro continua.
Ao postar eu já tinha feito isso.

kaique

pois cola aqui a clase TelaCadastro e a class ObterMC…
Aí a gente vê a causa do problema…

[]'s.

Criado 12 de dezembro de 2007
Ultima resposta 13 de dez. de 2007
Respostas 14
Participantes 4