Que Erro é este ? Exception occurred during event dispatching: java.lang.NullPointerException

2 respostas
cyberlacs

Amigos estava funcionando ai mexendo para fazer os ultimos acertos acabei fazendo algo de errado ai ai ai que tristeza estava funcionando perfeitamente :(

private void bMaisActionPerformed(java.awt.event.ActionEvent evt) {                                      
        int i=0;
        boolean encontrou=false;
        
        String linha[] = new String[5];
        
        String sql="select pro_cod, pro_desc, pro_preco, pro_estoque"
                + "from produto";// where pro_cod="+codigo;
        
        ResultSet rs = Banco.con.consultar(sql);      
        
        DefaultTableModel modelo=(DefaultTableModel)jTable1.getModel();

        try 
        {
            int a =Integer.parseInt(getQtdEstoque());
            int b =Integer.parseInt(sQuant.getValue().toString());
            JOptionPane.showMessageDialog(this, "Em estoque "+a+" A vender "+b);

            if(a < b)
            {
                JOptionPane.showMessageDialog(this, "Estoque menor que a venda a ser efetuada");
            }
            else
            {
                while(i < modelo.getRowCount() && modelo.getRowCount() > 0)// Vasculha a jTable
                {
                    if(modelo.getValueAt(i,1).toString().equals(tProduto.getText()))//Se a linha da tabela for igual tProduto(jTextField)
                    {  
                        int op = JOptionPane.showConfirmDialog(this, modelo.getValueAt(i,2).toString()+" unidades deste produto já foi adicionado\n"
                                                                  + "Deseja atualizar a quant atual por "+sQuant.getValue().toString()+" unid");

                        if(op==JOptionPane.YES_OPTION)
                        {
                            if(rs.next())
                            {
                                //Nesta linha retiro o R$ pois vem do BD
                                String retira = rs.getString(3).substring(2);
                                //Retiro os pontos pois com valores 22.222,00 temos de fazer este tratamento Double é assim 22222.00
                                retira = retira.replace(".", "");
                                //Apos tirar o ponto tenho de tirar a virgula e colocar o ponto o valor ira fica compativel com Double
                                retira = retira.replace(",", ".");

                                //Pego o valor do Produto e Quantidade antiga multiplico
                                double multiplicaValorAntigo = Double.parseDouble(retira) * Double.parseDouble(modelo.getValueAt(i,2).toString());
                                //Apos a multiplicação subtraiu pela soma que é o valor total
                                soma = soma - multiplicaValorAntigo;
                                //Insiro a nova quantidade na lista       
                                modelo.setValueAt(sQuant.getValue().toString(), i, 2);
                                //Multiplico a nova quantidade pelo valor unitários do Produto
                                double multiplica = Double.parseDouble(retira)*Double.parseDouble(sQuant.getValue().toString());
                                //Insiro o novo valor ja multiplicado do Produto
                                modelo.setValueAt(String.format("R$ %.2f", multiplica), i, 4);
                                //Atualizo o novo valor total com a nova multiplicação 
                                soma = soma + multiplica;
                                //jTotal que é um jLabel recebe o valor atualizado
                                jTotal.setText(String.format("R$ %.2f", soma));
                            }   
                        }
                        //Esta variavel é responsavel em não permitir a inserção do produto ja existente na jTabel modelo 
                        //linha logo abaixo ####### if(rs.next() && encontrou == false)
                        encontrou = true;  
                    }

                    i++;
                }

                if(rs.next() && encontrou == false)
                {
                    linha[0]=rs.getString(1);
                    linha[1]=rs.getString(2);
                    linha[2]=sQuant.getValue().toString();
                    linha[3]=rs.getString(3);

                    String retira = rs.getString(3).substring(2);
                    retira = retira.replace(".", "");
                    retira = retira.replace(",", ".");                

                    double multiplica = Double.parseDouble(retira)*Double.parseDouble(sQuant.getValue().toString());

                    linha[4] = String.format("R$ %.2f", multiplica);
                    modelo.addRow(linha);

                    soma = soma + multiplica;

                    jTotal.setText(String.format("R$ %.2f", soma));

                }
            }
        } 
        catch (SQLException ex) 
        {
            Logger.getLogger(TelaTrocaOleo.class.getName()).log(Level.SEVERE, null, ex);
        }
           
                
    }

Erro logo abaixo

Exception occurred during event dispatching:
java.lang.NullPointerException
	at controloil.TelaTrocaOleo.bMaisActionPerformed(TelaTrocaOleo.java:602)
	at controloil.TelaTrocaOleo.access$400(TelaTrocaOleo.java:26)
	at controloil.TelaTrocaOleo$5.actionPerformed(TelaTrocaOleo.java:207)
	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:6267)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
	at java.awt.Component.processEvent(Component.java:6032)
	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:4577)
	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:2478)
	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.pumpEventsForFilter(EventDispatchThread.java:178)
	at java.awt.Dialog$1.run(Dialog.java:1046)
	at java.awt.Dialog$3.run(Dialog.java:1098)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Dialog.show(Dialog.java:1096)
	at java.awt.Component.show(Component.java:1563)
	at java.awt.Component.setVisible(Component.java:1515)
	at java.awt.Window.setVisible(Window.java:842)
	at java.awt.Dialog.setVisible(Dialog.java:986)
	at controloil.TelaPrincipal.jMenuItem5ActionPerformed(TelaPrincipal.java:217)
	at controloil.TelaPrincipal.access$500(TelaPrincipal.java:26)
	at controloil.TelaPrincipal$6.actionPerformed(TelaPrincipal.java:147)
	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.AbstractButton.doClick(AbstractButton.java:357)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:809)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:850)
	at java.awt.Component.processMouseEvent(Component.java:6267)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
	at java.awt.Component.processEvent(Component.java:6032)
	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:4577)
	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:2478)
	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)
CONSTRUÍDO COM SUCESSO (tempo total: 27 segundos)

Obrigado

2 Respostas

cyberlacs

Resolvido

tinha comentado a linha de uma classe que envia por parametro o codigo

codigo=modelo.getValueAt(jTable1.getSelectedRow(),0).toString();

Obrigado mesmo assim a comunidade que sempre esta me ajudando

At+++ :smiley:

Jemerson

Tranquilo.
Teria como você editar e colocar [Resolvido] na frente da sua pergunta?
Isso facilita para a galera identificar as dúvidas não respondidas.
Abraços.

Criado 29 de novembro de 2011
Ultima resposta 29 de nov. de 2011
Respostas 2
Participantes 2