Java.lang.NullPointerException [RESOLVIDO]

14 respostas
C

Pessoal, tenho um programinha de 5 campos texto e 3 botoes que fala com uma tabela access. Veja o codigo abaixo.

[i]public void actionPerformed(ActionEvent evento)

{

try{
conn = new Conexao();
           testa = new Banco();

           PreparedStatement stm = null;
           ResultSet rs = null;
           
           //Statement stm = conn.getConn().createStatement();


           if(evento.getSource() == menuSobre)
           {
               JOptionPane.showMessageDialog(null,"Testando conectividade com Microsoft Access");
           }

           if(evento.getSource() == Bconsulta)
            {
              try{
                   StringBuffer aux = new StringBuffer("");

                   aux = testa.Consultar(Integer.parseInt(Tcod.getText()));
                   stm = conn.getConn().prepareStatement(aux.toString());
                   rs = stm.executeQuery();

                   while (rs.next()) {
                   int i = 1;
                       
                   Tcod.setText(""+rs.getInt(i++));
                   Tnome.setText(rs.getString(i++));
                   Ttel.setText(rs.getString(i++));
                   Tend.setText(rs.getString(i++));
                   Tprod.setText(rs.getString(i++));
                   }

                  }catch (SQLException e) {
                        e.getMessage();
                   }catch(Exception e){e.getMessage();}
              finally{rs = null; stm = null; }

            }

            if(evento.getSource()== Bincluir)
            {
                  try{

                   query = testa.Inserir(Integer.parseInt(Tcod.getText()), Tnome.getText(),
                 				Integer.parseInt(Ttel.getText()), Tend.getText(),
                                            Tprod.getText());

                   stm.executeUpdate(query);

                   Limpar();
               } catch(SQLException e){}
            
             }               

           if(evento.getSource() == Bexcluir)
           {
               try{
                   
              query = testa.Excluir(Integer.parseInt(Tcod.getText()));

              stm.executeUpdate(query);

              Limpar();
              
             }catch(SQLException e){}
           }            

           if(evento.getSource() == Bclear)
           {

              Limpar();
           }
            }
            catch (Exception e)
           {
              e.printStackTrace();
           }
        }

 }[/i]

Meu problema é que ocorre este erro de execução quando tento excluir alguma linha da tabela atraves do codigo do cliente, ou quando tento inserir novas informações. A inserção de novas informações e exclusão já consegui realizar com sucesso antes de implementar a consulta. Agora a consulta é a unica funcionalidade executada com sucesso. Alguem pode me ajudar a sanar este erro?

Erro de execução:

java.lang.NullPointerException

at Layout$ManipulaBotao.actionPerformed(Layout.java:335)

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:6263)

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

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

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

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

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

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

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

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

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

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

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

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

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)

14 Respostas

S

Ajudaria mais se você colocasse seu código entre as tags code.

C
public void actionPerformed(ActionEvent evento) 
{ 
try{ 

conn = new Conexao(); 
testa = new Banco(); 

PreparedStatement stm = null; 
ResultSet rs = null; 

//Statement stm = conn.getConn().createStatement(); 


if(evento.getSource() == menuSobre) 
{ 
JOptionPane.showMessageDialog(null,"Testando conectividade com Microsoft Access"); 
} 

if(evento.getSource() == Bconsulta) 
{ 
try{ 
StringBuffer aux = new StringBuffer(""); 

aux = testa.Consultar(Integer.parseInt(Tcod.getText())); 
stm = conn.getConn().prepareStatement(aux.toString()); 
rs = stm.executeQuery(); 

while (rs.next()) { 
int i = 1; 

Tcod.setText(""+rs.getInt(i++)); 
Tnome.setText(rs.getString(i++)); 
Ttel.setText(rs.getString(i++)); 
Tend.setText(rs.getString(i++)); 
Tprod.setText(rs.getString(i++)); 
} 

}catch (SQLException e) { 
e.getMessage(); 
}catch(Exception e){e.getMessage();} 
finally{rs = null; stm = null; } 

} 

if(evento.getSource()== Bincluir) 
{ 
try{ 

query = testa.Inserir(Integer.parseInt(Tcod.getText()), Tnome.getText(), 
Integer.parseInt(Ttel.getText()), Tend.getText(), 
Tprod.getText()); 

stm.executeUpdate(query); 

Limpar(); 
} catch(SQLException e){} 

} 

if(evento.getSource() == Bexcluir) 
{ 
try{ 

query = testa.Excluir(Integer.parseInt(Tcod.getText())); 

stm.executeUpdate(query); 

Limpar(); 

}catch(SQLException e){} 
} 

if(evento.getSource() == Bclear) 
{ 

Limpar(); 
} 
} 
catch (Exception e) 
{ 
e.printStackTrace(); 
} 
} 

}
C

Claro, segue..

cesar.americo:
public void actionPerformed(ActionEvent evento) 
{ 
try{ 

conn = new Conexao(); 
testa = new Banco(); 

PreparedStatement stm = null; 
ResultSet rs = null; 

//Statement stm = conn.getConn().createStatement(); 


if(evento.getSource() == menuSobre) 
{ 
JOptionPane.showMessageDialog(null,"Testando conectividade com Microsoft Access"); 
} 

if(evento.getSource() == Bconsulta) 
{ 
try{ 
StringBuffer aux = new StringBuffer(""); 

aux = testa.Consultar(Integer.parseInt(Tcod.getText())); 
stm = conn.getConn().prepareStatement(aux.toString()); 
rs = stm.executeQuery(); 

while (rs.next()) { 
int i = 1; 

Tcod.setText(""+rs.getInt(i++)); 
Tnome.setText(rs.getString(i++)); 
Ttel.setText(rs.getString(i++)); 
Tend.setText(rs.getString(i++)); 
Tprod.setText(rs.getString(i++)); 
} 

}catch (SQLException e) { 
e.getMessage(); 
}catch(Exception e){e.getMessage();} 
finally{rs = null; stm = null; } 

} 

if(evento.getSource()== Bincluir) 
{ 
try{ 

query = testa.Inserir(Integer.parseInt(Tcod.getText()), Tnome.getText(), 
Integer.parseInt(Ttel.getText()), Tend.getText(), 
Tprod.getText()); 

stm.executeUpdate(query); 

Limpar(); 
} catch(SQLException e){} 

} 

if(evento.getSource() == Bexcluir) 
{ 
try{ 

query = testa.Excluir(Integer.parseInt(Tcod.getText())); 

stm.executeUpdate(query); 

Limpar(); 

}catch(SQLException e){} 
} 

if(evento.getSource() == Bclear) 
{ 

Limpar(); 
} 
} 
catch (Exception e) 
{ 
e.printStackTrace(); 
} 
} 

}
S

Posta o código inteiro que está com erro para gente da uma olhada melhor

C

Entao cara, ele está compilando e executando. O que ocorre é este erro de execução: java.lang.NullPointerException quando tento Excluir alguma linha da tabela, ou inserir.
Agora o único evendo que consigo executar com sucesso é de consulta. Antes de implementar a consulta, eu conseguia excluir e inserir tb. O curioso é que os códigos referente aos eventos de exclusão e inserção permanecem igual antes. Veja os métodos correspondetes:

public class Banco {

public String query = "";
        
 public String Inserir(int cod, String nome, int tel, String end, String prod)
 {
    query = "insert into Table1(Cod_cli, Nome, Tel, End, Produto)Values('"+cod+"','" + nome +
                                    	"','"+tel+"','"+end+"','"+prod+"')";

    return query;
  }
  
  public String Excluir(int cod)
  {
   query = "delete from Table1 where Cod_cli="+cod;

   return query;
  }
		
  public StringBuffer Consultar(int cod)
  {
   StringBuffer sql = new StringBuffer("");
   
   sql.append("SELECT cod_cli, nome, tel, end, produto ");   
   sql.append("FROM table1  ");   
   sql.append("WHERE cod_cli = " +cod);
                      
   return sql;
  }

}
S

Cara, posta a Layout.java também ai se você puder

M

Cara, me desculpa, mas pessoas como você estão estragando este forum =(, ESTE ERRO É PORQUE VOCE ESTA TENTANDO ACESSAR ALGUM METODO/ATRIBUTO DE UM OBJETO QUE NÃO ESTÁ REFERENCIANDO NADA, NULL !

Para descobrir porque está ocorrendo e onde está ocorrendo existe uma ótima “ferramenta” chamada DEBUG !

C

Espertão, acho que você deve ir para o avançado então, sou iniciante estou no java básico. Dá uma olhada no código se não puder ou não conseguir ajudar, racha fora!

wandersonxs

Cada um viu… Sai para lá STAR!!!
o cara ta com problema… não chegou pedindo solução pronta nem nada, postou o codigo e erro.
Normal para que ta iniciando no mundo java.

Carinha, posta o código do Layout.java dai podemos tentar te ajudar.

Abraços
Wanderson 8)

C

Cara, copiei tudo.. obrigadao abraço

import java.awt.event.*; // importa todas as classes do pacote java.awt.event
   import javax.swing.*; // importa todas as classes do pacote javax.swing
   import java.sql.*;

public class Layout extends javax.swing.JFrame {

    /** Creates new form Layout */
    public Layout() {
        
        super("Testando Interação com Access"); // chama a super classe
        initComponents();

        menuSair.addActionListener(

            // classe interna anônima para menipular eventos do itemSair
                new ActionListener() {

               // finaliza aplicação, quando o usuário clicar o itemSair
                   public void actionPerformed( ActionEvent evento )
                  {
                     System.exit( 0 );
                  }

               }  // fim da classe interna anônima

            );

                
         ManipulaBotao manipulador = new ManipulaBotao();

         Bincluir.addActionListener(manipulador);
         Bclear.addActionListener(manipulador);
         Bconsulta.addActionListener(manipulador);
         Bexcluir.addActionListener(manipulador);
         menuSobre.addActionListener(manipulador);

         Tcod.requestFocus();
	 
         setResizable(false);
         setLocation(300,100);

    }

    /** 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.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        Lnome = new java.awt.Label();
        Ltel = new java.awt.Label();
        Lend = new java.awt.Label();
        Lprod = new java.awt.Label();
        Lcod = new java.awt.Label();
        Tnome = new java.awt.TextField();
        Ttel = new java.awt.TextField();
        Tend = new java.awt.TextField();
        Tprod = new java.awt.TextField();
        Tcod = new java.awt.TextField();
        Bincluir = new javax.swing.JButton();
        Bclear = new javax.swing.JButton();
        Bconsulta = new javax.swing.JButton();
        Bexcluir = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        tabela = new javax.swing.JTable();
        barra = new javax.swing.JMenuBar();
        menuArquivo = new javax.swing.JMenu();
        jSeparator1 = new javax.swing.JSeparator();
        menuSair = new javax.swing.JMenuItem();
        menuAjuda = new javax.swing.JMenu();
        menuSobre = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        Lnome.setText("Nome:");

        Ltel.setText("Tel.:");

        Lend.setText("End.:");

        Lprod.setText("Produto:");

        Lcod.setText("Cod. Cli.:");

        Bincluir.setText("Incluir");

        Bclear.setText("Limpar");

        Bconsulta.setText("Consultar");

        Bexcluir.setText("Excluir");

        tabela.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null},
                {null, null, null, null, null}
            },
            new String [] {
                "Codigo", "Nome", "Tel", "Endereço", "Produto"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.Integer.class, java.lang.String.class, java.lang.Long.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        jScrollPane1.setViewportView(tabela);
        tabela.getColumnModel().getColumn(0).setResizable(false);
        tabela.getColumnModel().getColumn(1).setResizable(false);
        tabela.getColumnModel().getColumn(2).setResizable(false);
        tabela.getColumnModel().getColumn(3).setResizable(false);
        tabela.getColumnModel().getColumn(4).setResizable(false);

        menuArquivo.setText("Arquivo");
        menuArquivo.add(jSeparator1);

        menuSair.setText("Sair");
        menuArquivo.add(menuSair);

        barra.add(menuArquivo);

        menuAjuda.setText("Ajuda");

        menuSobre.setText("Sobre");
        menuAjuda.add(menuSobre);

        barra.add(menuAjuda);

        setJMenuBar(barra);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(34, 34, 34)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(Lcod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(Lend, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(Ltel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(layout.createSequentialGroup()
                                        .addComponent(Ttel, javax.swing.GroupLayout.PREFERRED_SIZE, 133, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(28, 28, 28)
                                        .addComponent(Lprod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(Tprod, javax.swing.GroupLayout.DEFAULT_SIZE, 393, Short.MAX_VALUE))
                                    .addGroup(layout.createSequentialGroup()
                                        .addComponent(Bconsulta, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(18, 18, 18)
                                        .addComponent(Bincluir, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(18, 18, 18)
                                        .addComponent(Bexcluir, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(18, 18, 18)
                                        .addComponent(Bclear, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)))
                                .addGap(22, 22, 22))
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(Tend, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 613, Short.MAX_VALUE)
                                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                                        .addComponent(Tcod, javax.swing.GroupLayout.PREFERRED_SIZE, 77, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(Lnome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(Tnome, javax.swing.GroupLayout.DEFAULT_SIZE, 475, Short.MAX_VALUE)))
                                .addGap(23, 23, 23))))
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 724, Short.MAX_VALUE)))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(20, 20, 20)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 162, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(35, 35, 35)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(Lcod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(Tcod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(Lnome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(Tnome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(Lend, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(Tend, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(Ltel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(Ttel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(Lprod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(Tprod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(20, 20, 20)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(Bconsulta)
                            .addComponent(Bincluir)
                            .addComponent(Bexcluir)
                            .addComponent(Bclear))))
                .addContainerGap(51, Short.MAX_VALUE))
        );

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

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Layout().setVisible(true);

            }
        });
    }

     private class ManipulaBotao implements ActionListener{

         String sout = "";



          public void actionPerformed(ActionEvent evento)
         {
            try{

               conn = new Conexao();
               testa = new Banco();

               PreparedStatement stm = null;
               ResultSet rs = null;
               
               //Statement stm = conn.getConn().createStatement();


               if(evento.getSource() == menuSobre)
               {
                   JOptionPane.showMessageDialog(null,"Testando conectividade com Microsoft Access");
               }

               if(evento.getSource() == Bconsulta)
                {
                  try{
                       StringBuffer aux = new StringBuffer("");

                       aux = testa.Consultar(Integer.parseInt(Tcod.getText()));
                       stm = conn.getConn().prepareStatement(aux.toString());
                       rs = stm.executeQuery();

                       while (rs.next()) {
                       int i = 1;
                           
                       Tcod.setText(""+rs.getInt(i++));
                       Tnome.setText(rs.getString(i++));
                       Ttel.setText(rs.getString(i++));
                       Tend.setText(rs.getString(i++));
                       Tprod.setText(rs.getString(i++));
                       }

                      }catch (SQLException e) {
                            e.getMessage();
                       }catch(Exception e){e.getMessage();}
                  finally{rs = null; stm = null; }

                }

                if(evento.getSource()== Bincluir)
                {
                      try{

                       query = testa.Inserir(Integer.parseInt(Tcod.getText()), Tnome.getText(),
                     				Integer.parseInt(Ttel.getText()), Tend.getText(),
                                                Tprod.getText());

                       stm.executeUpdate(query);

                       Limpar();
                   } catch(SQLException e){}
                
                 }               

               if(evento.getSource() == Bexcluir)
               {
                   try{
                       
                  query = testa.Excluir(Integer.parseInt(Tcod.getText()));

                  stm.executeUpdate(query);

                  Limpar();
                  
                 }catch(SQLException e){}
               }            

               if(evento.getSource() == Bclear)
               {

                  Limpar();
               }
                }
                catch (Exception e)
               {
                  e.printStackTrace();
               }
            }

     }




    // Variables declaration - do not modify                     
    private javax.swing.JButton Bclear;
    private javax.swing.JButton Bconsulta;
    private javax.swing.JButton Bexcluir;
    private javax.swing.JButton Bincluir;
    private java.awt.Label Lcod;
    private java.awt.Label Lend;
    private java.awt.Label Lnome;
    private java.awt.Label Lprod;
    private java.awt.Label Ltel;
    private java.awt.TextField Tcod;
    private java.awt.TextField Tend;
    private java.awt.TextField Tnome;
    private java.awt.TextField Tprod;
    private java.awt.TextField Ttel;
    private javax.swing.JMenuBar barra;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JMenu menuAjuda;
    private javax.swing.JMenu menuArquivo;
    private javax.swing.JMenuItem menuSair;
    private javax.swing.JMenuItem menuSobre;
    private javax.swing.JTable tabela;
    // End of variables declaration                   
    public String query = "";
    public Conexao conn; // declara Conexao conn
    public Banco testa; //declara objeto da classe banco
    
        public void Limpar()
	{
	  Tnome.setText("");
          Ttel.setText("");
          Tend.setText("");
          Tprod.setText("");
          Tcod.setText("");
        }
}
joaopaulolobo

mate42… vc disse q o kra “ESTA TENTANDO ACESSAR ALGUM METODO/ATRIBUTO DE UM OBJETO QUE NÃO ESTÁ REFERENCIANDO NADA, NULL”… então fala pra galera o ponto exato em que isso está acontecendo… Pela sua resposta ignorante, vc realmente deve saber onde está dando o null…

Diga ae !!! Bonzão

B

cesar, esta é a a linha 335?

stm.executeUpdate(query);

stm está nulo.

zoren
stm.executeUpdate(query);

você esqueceu de inicializar o seu statement para executar a query

C

Desatenção minha. Resolveu o problema

Obrigadão pela ajuda pessoal!!

Abraço
Cesar

Criado 3 de setembro de 2009
Ultima resposta 3 de set. de 2009
Respostas 14
Participantes 7