"AWT-EventQueue-0" java.lang.NullPointerException como resolver?

E ae Galera!

Bom, como de praxe, estou com um grande porblema no meu código JAVA!

é o siguinte, eu estou tentando fazer um programa para minha tia cadastrar os clientes dela (da empresa dela) fiz tda a parte gráfica, e agora falta a parte de Bd, calculos e relatórios…

minha experiência com JAVA nao eh das maiores… mas sei um poco…

segue abaixo os meus códigos que estão com erro:

        BtLogar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/IconesImagens/Acp_ico.png"))); // NOI18N
        BtLogar.setText("Logar!");
        BtLogar.addActionListener(new ActionListener() {  

            public void actionPerformed(ActionEvent e) {  

                Login Log = new Login();        
                Log.Logar(CUsuario,CSenha); // e esse da linha 59
            }  
        });

e esse:

public static void Logar(String User, char[] Key){

        ConectaBanco Cn = new ConectaBanco();
        Cn.Conecta();

        String UserBd = null;
        String SenhaBd = null;

        ConectaBanco ClCon = new ConectaBanco();

        try{
            ClCon.Stm = ClCon.Con.createStatement(); // esse eh o erro da linha 24
            ClCon.Rs = ClCon.Stm.executeQuery("select * from login");

            while(ClCon.Rs.next()){

                UserBd = ClCon.Rs.getString("login");
                SenhaBd = ClCon.Rs.getString("senha");
            }

E esse é o erro:

Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
[color=red]at Core.Login.Logar(Login.java:24)[/color]
[color=red]at Interface.TelaLogin$2.actionPerformed(TelaLogin.java:59)[/color]
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:6134)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5899)
at java.awt.Container.processEvent(Container.java:2023)
at java.awt.Component.dispatchEventImpl(Component.java:4501)
at java.awt.Container.dispatchEventImpl(Container.java:2081)
at java.awt.Component.dispatchEvent(Component.java:4331)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4301)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3965)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3895)
at java.awt.Container.dispatchEventImpl(Container.java:2067)
at java.awt.Window.dispatchEventImpl(Window.java:2458)
at java.awt.Component.dispatchEvent(Component.java:4331)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

bom a linha 24 a qual ele se refere no começo eh onde eu dô ação ao botão locar, tipo, ele chama o metodo logar e envia pra ele o usuácio e senha q o usuário digitar… ai o outro erro eh quando eu crio o statement pra pode pesquisa no banco, aquele statement ele ta instanciado da minha classe Conecta (onde eh feita a conexao com o BD).

vii q eh erro de NullPointer… mas não sei onde pode ser esse valor nulo!

Valeu ai quem puder ajudar!

=D

Edit:

essa eh minha classe q conecta no banco:

public class ConectaBanco {
    
    Connection Con;
    Statement Stm;
    ResultSet Rs;

    public ConectaBanco(){
        
    }

    public void Conecta(){

        String Driver = "com.mysql.jdbc.Driver";
        String URL = "jdbc:mysql://localhost:3306/scc";
        String USER = "root";
        String SENHA = "root";

        try{

            Class.forName(Driver);
            Con = DriverManager.getConnection(URL, USER, SENHA);
            //JOptionPane.showMessageDialog(null,"Conectado com o Banco!",".:: SCC ::.",JOptionPane.INFORMATION_MESSAGE);
        }
        catch(SQLException E){
            JOptionPane.showMessageDialog(null,"Erro de Conexão com o Banco! "+E,".:: Erro - SCC ::.",JOptionPane.ERROR_MESSAGE);
        }
        catch (ClassNotFoundException E){
            JOptionPane.showMessageDialog(null,"Classe da conexão não encontrada!",".:: Erro - SCC ::.",JOptionPane.ERROR_MESSAGE);
        }
    }

Por favor, coloque o código completo aqui.

Você pode utilizar o Debug do NetBeans ou Eclipse que são muito bons para depurar esses tipos de problemas.

Boa sorte… :smiley:

então,

eu uso o netbeans 6.5, vou testar o debug dele…

quanto ao código inteiro, vou postar depois pq estou sem ele agora…

mas nenhuma idéia do que seja?!?!

Você utilizou o editor do NetBeans para criar essa tela?

Eu já passei por esse tipo de exceção e é complicado encontrar o problema…

Por isso acho que a melhor coisa a se fazer é depurar o código.

(ignore essa mensagem, pois ficou duplicada e a removi)

koksopkpskpskpskpskpksppsoksps

véi!!! véiiiiiiiiiiiiiiiiiiiiiii!

descobri o problema!

era que o Statement, o Connection e o ResultSet nao estavam como estáticos!

ai fui lá e coloquei como static na classe que conecta com o banco e funfo!!!

funfo bunito!!!

valeu ai quem respondeu o tópico!

[]'s!