Uma referência de caminho a um ícone não é encontrada, o que fazer?

Usei uma ferramenta de construção de tela no Apache NetBeans e mudei a localização do projeto e seu nome. Agora está dando erro quando aciono o botão que associa produtos e fornecedores. Não sei o que fazer e o trecho de código que dá o endereço do ícone não permite alteração pois foi gerado pelo NetBeans. Veja a mensagem de erro e a linha que está com problema no print abaixo:

Se for necesspario eu crio novamente o diretório com os ícones.

Veja também o código completo da classe que é um JFrame:

package view;

import controller.ControllerCadForProduto;
import empresavi.Util;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import model.Fornecedores;
import model.FornecedoresProduto;
import model.ModelCadForProduto;
import model.Produtos;

/**
 *
 * @author Ronaldo R. Godoi
 */
public class GuiCadForProduto extends javax.swing.JFrame {

    ControllerCadForProduto cCFProduto = new ControllerCadForProduto();
    ModelCadForProduto mCFProduto = new ModelCadForProduto();
    public ArrayList<Fornecedores> listaFornecedores = new ArrayList<>();
    public ArrayList<ModelCadForProduto> listaFornecedores2 = new ArrayList<>();
    Util util = new Util();
    Date nova_data = new Date();
    DateFormat formatoData = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    
    /**
     * Creates new form GuiCadForProduto
     */
    public GuiCadForProduto(Produtos mProduto) {
        initComponents();
        inicializaProduto(mProduto);
        carregarFornecedoresProduto();
        setLocationRelativeTo(null);
        setBotoes(true, true, false, false, false, false);
        ativaDesativaTF(false);
    }

    /**
     * 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() {

        jScrollPane1 = new javax.swing.JScrollPane();
        jTable1 = new javax.swing.JTable();
        jScrollPane2 = new javax.swing.JScrollPane();
        jTable2 = new javax.swing.JTable();
        lbTitulo_cad_for_produto = new javax.swing.JLabel();
        lbId = new javax.swing.JLabel();
        lbId_produto = new javax.swing.JLabel();
        lbId_fornecedor = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        lbData_compra = new javax.swing.JLabel();
        lbData_cadastro = new javax.swing.JLabel();
        tfId = new javax.swing.JTextField();
        tfId_produto = new javax.swing.JTextField();
        tfId_fornecedor = new javax.swing.JTextField();
        tfPreco = new javax.swing.JTextField();
        tfData_compra = new javax.swing.JTextField();
        tfData_cadastro = new javax.swing.JTextField();
        btNovo = new javax.swing.JButton();
        btLocalizar = new javax.swing.JButton();
        btAlterar = new javax.swing.JButton();
        btGravar = new javax.swing.JButton();
        btExcluir = new javax.swing.JButton();
        btCancelar = new javax.swing.JButton();
        btFechar = new javax.swing.JButton();
        lbDescricao_produto = new javax.swing.JLabel();
        lbNome_razao_fornecedor = new javax.swing.JLabel();
        jScrollPane3 = new javax.swing.JScrollPane();
        jtFornecedor = new javax.swing.JTable();
        jLabel1 = new javax.swing.JLabel();
        lbNomeFornecedor = new javax.swing.JLabel();
        lbNomeProduto = new javax.swing.JLabel();

        jTable1.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        jScrollPane1.setViewportView(jTable1);

        jTable2.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        jScrollPane2.setViewportView(jTable2);

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        lbTitulo_cad_for_produto.setText("Cadastro de Fornecedores deste Produto");

        lbId.setText("Codigo de Cadastro:  ");

        lbId_produto.setText("Código de Produto: ");

        lbId_fornecedor.setText("Código de Fornecedor: ");

        jLabel5.setText("Preço Praticado pelo Fornecedor: ");

        lbData_compra.setText("Data da Compra: ");

        lbData_cadastro.setText("Data de Cadastro neste Produto: ");

        tfId.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tfIdActionPerformed(evt);
            }
        });
        tfId.setEditable(false);

        tfId_produto.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tfId_produtoActionPerformed(evt);
            }
        });
        tfId_produto.setEditable(false);

        tfId_fornecedor.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tfId_fornecedorActionPerformed(evt);
            }
        });
        tfId_fornecedor.addFocusListener(new FocusAdapter() {
            public void focusLost(FocusEvent e) {
                if(!tfId_fornecedor.getText().equals("")) {
                    if(!cCFProduto.localizaFornecedorController(tfId_fornecedor.getText())) {
                        JOptionPane.showMessageDialog(null, "Fornecedor não cadastrado!");
                        tfId_fornecedor.requestFocus();
                    }
                }
            }
        });

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

        btNovo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/novo.gif"))); // NOI18N
        btNovo.setText("Novo");
        btNovo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btNovoActionPerformed(evt);
            }
        });

        btLocalizar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/localizar.png"))); // NOI18N
        btLocalizar.setText("Localizar");
        btLocalizar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btLocalizarActionPerformed(evt);
            }
        });

        btAlterar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/alterar.gif"))); // NOI18N
        btAlterar.setText("Alterar");
        btAlterar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btAlterarActionPerformed(evt);
            }
        });

        btGravar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/gravar.gif"))); // NOI18N
        btGravar.setText("Gravar");
        btGravar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btGravarActionPerformed(evt);
            }
        });

        btExcluir.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/excluir.gif"))); // NOI18N
        btExcluir.setText("Excluir");
        btExcluir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btExcluirActionPerformed(evt);
            }
        });

        btCancelar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/cancelar.gif"))); // NOI18N
        btCancelar.setText("Cancelar");
        btCancelar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btCancelarActionPerformed(evt);
            }
        });

        btFechar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/sair.png"))); // NOI18N
        btFechar.setText("Sair");
        btFechar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btFecharActionPerformed(evt);
            }
        });

        lbDescricao_produto.setText("Produto: ");

        lbNome_razao_fornecedor.setText("Fornecedor: ");

        jtFornecedor.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "Codigo Fornecedor", "Nome ou Razão", "Telefone", "Cidade", "Estado"
            }
        ) {
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false
            };

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        jScrollPane3.setViewportView(jtFornecedor);

        jLabel1.setText("Tabela de Fornecedores deste Produto:");

        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()
                        .addContainerGap()
                        .addComponent(btNovo)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(btLocalizar)
                        .addGap(9, 9, 9)
                        .addComponent(btGravar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(btAlterar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(btExcluir)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btCancelar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(btFechar, javax.swing.GroupLayout.PREFERRED_SIZE, 87, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(19, 19, 19)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(layout.createSequentialGroup()
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(tfPreco, javax.swing.GroupLayout.PREFERRED_SIZE, 82, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 214, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(37, 37, 37)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(lbData_compra)
                                            .addComponent(tfData_compra, javax.swing.GroupLayout.PREFERRED_SIZE, 144, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(65, 65, 65)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(tfData_cadastro, javax.swing.GroupLayout.PREFERRED_SIZE, 136, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(lbData_cadastro, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                                    .addGroup(layout.createSequentialGroup()
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(layout.createSequentialGroup()
                                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                                        .addComponent(tfId, javax.swing.GroupLayout.Alignment.LEADING)
                                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                                                .addComponent(lbId_produto, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                                .addComponent(tfId_produto))
                                                            .addComponent(lbDescricao_produto)))
                                                    .addComponent(lbId)
                                                    .addComponent(lbTitulo_cad_for_produto))
                                                .addGap(85, 85, 85))
                                            .addComponent(lbNomeProduto, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 266, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGap(48, 48, 48)
                                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(lbNome_razao_fornecedor)
                                            .addComponent(lbId_fornecedor)
                                            .addComponent(tfId_fornecedor, javax.swing.GroupLayout.PREFERRED_SIZE, 96, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(lbNomeFornecedor, javax.swing.GroupLayout.PREFERRED_SIZE, 314, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                            .addGroup(layout.createSequentialGroup()
                                .addContainerGap()
                                .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 663, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 241, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(38, 38, 38)
                .addComponent(lbTitulo_cad_for_produto, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(lbId)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(tfId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(24, 24, 24)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lbId_produto)
                    .addComponent(lbId_fornecedor))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(tfId_produto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(tfId_fornecedor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(lbDescricao_produto)
                    .addComponent(lbNome_razao_fornecedor))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(lbNomeFornecedor, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(lbNomeProduto, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel5)
                    .addComponent(lbData_compra)
                    .addComponent(lbData_cadastro))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(tfPreco, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(tfData_compra, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(tfData_cadastro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(25, 25, 25)
                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 142, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(btNovo)
                    .addComponent(btLocalizar)
                    .addComponent(btAlterar)
                    .addComponent(btExcluir)
                    .addComponent(btCancelar)
                    .addComponent(btFechar)
                    .addComponent(btGravar))
                .addContainerGap(66, Short.MAX_VALUE))
        );

        btNovo.getAccessibleContext().setAccessibleParent(btNovo);

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

    private void btNovoActionPerformed(java.awt.event.ActionEvent evt) {                                       
        ativaDesativaTF(true);
        limparCampos();
        setBotoes(false, false, true, false, false, true);
        tfId_fornecedor.requestFocus();
    }                                      

    private void btFecharActionPerformed(java.awt.event.ActionEvent evt) {                                         
        dispose();
    }                                        

    private void btGravarActionPerformed(java.awt.event.ActionEvent evt) {                                         
        for(int i = 0; i < listaFornecedores.size(); i++) {
            if(listaFornecedores.get(i).getId_cgc_cpf().equals(tfId_fornecedor.getText())) {
                JOptionPane.showMessageDialog(null, "Fornecedor já pertence ao cadastrado!");
                tfId_fornecedor.requestFocus();
                return;
            }
        }
        System.out.println("Id produto: três " + this.tfId_produto.getText());
        mCFProduto.setId_produto(this.tfId_produto.getText());
        mCFProduto.setId_fornecedor(this.tfId_fornecedor.getText());
        mCFProduto.setPreco(util.spaceToDouble(this.tfPreco.getText()));
        mCFProduto.setData_compra(this.tfData_compra.getText());
        mCFProduto.setData_cadastro(this.tfData_cadastro.getText());
        if(cCFProduto.salvarCadForProdutoController(mCFProduto) > 0) {
            JOptionPane.showMessageDialog(this, "Registro salvo com sucesso!", "Atenção", JOptionPane.WARNING_MESSAGE);
            limparCampos();
            carregarFornecedoresProduto();
        } else {
            JOptionPane.showMessageDialog(this, "Erro ao salvar fornecedor!", "ERRO", JOptionPane.ERROR_MESSAGE);
        }
        ativaDesativaTF(false);
    }                                        

   // private void listaFornecedor() {
   //     listaModelFornecedor = cCFProduto.getListaCadForProdutoController();
   // }
    
    private void btAlterarActionPerformed(java.awt.event.ActionEvent evt) {                                          
        mCFProduto.setId_produto(this.tfId_produto.getText());
        mCFProduto.setId_fornecedor(this.tfId_fornecedor.getText());
        mCFProduto.setPreco(util.spaceToDouble(this.tfPreco.getText()));
        mCFProduto.setData_compra(this.tfData_compra.getText());
        mCFProduto.setData_cadastro(this.tfData_cadastro.getText());
        if(cCFProduto.atualizarCadForProdutoController(mCFProduto)) {
            JOptionPane.showMessageDialog(this, "Registro salvo com sucesso!");
            limparCampos();
            carregarFornecedoresProduto();
        } else {
            JOptionPane.showMessageDialog(this, "Erro ao salvar fornecedor!", "ERRO", JOptionPane.ERROR_MESSAGE);
        }
    }                                         

    private void tfIdActionPerformed(java.awt.event.ActionEvent evt) {                                     
        // TODO add your handling code here:
    }                                    

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

    }                                            

    private void btLocalizarActionPerformed(java.awt.event.ActionEvent evt) {                                            
        mCFProduto = cCFProduto.localizaFornecedorProdutoController(tfId_produto.getText(), tfId_fornecedor.getText());
        if(mCFProduto == null){
            JOptionPane.showMessageDialog(null, "Fornecedor não cadastrado para o produto!");
            tfId_fornecedor.requestFocus();
            return;
        } else {
            tfId.setText("" + mCFProduto.getId());
            tfPreco.setText("" + mCFProduto.getPreco());
            tfData_compra.setText(mCFProduto.getData_compra());
            tfData_cadastro.setText(mCFProduto.getData_cadastro());
        }
        ativaDesativaTF(true);
        setBotoes(false, true, false, true, true, true);
    }                                           

    private void tfId_fornecedorActionPerformed(java.awt.event.ActionEvent evt) {                                                
        tfId_fornecedor.addFocusListener(new FocusAdapter() {
            public void focusLost(FocusEvent e) {
                if(!cCFProduto.localizaFornecedorController(tfId_fornecedor.getText())) {
                    JOptionPane.showMessageDialog(null, "Fornecedor não cadastrado!");
                    tfId_fornecedor.requestFocus();
                }
            }
        });
    }                                               

    private void tfData_compraActionPerformed(java.awt.event.ActionEvent evt) {                                              
        // TODO add your handling code here:
    }                                             

    private void btExcluirActionPerformed(java.awt.event.ActionEvent evt) {                                          
        if(cCFProduto.excluirCadForProdutoController(tfId_produto.getText(), tfId_fornecedor.getText())) {
            JOptionPane.showMessageDialog(null, "Fornecedor excluído do cadastrado deste produto!");
            carregarFornecedoresProduto();
        } else {
            JOptionPane.showMessageDialog(null, "Problema na exclusão do fornecedor!");
        }
    }                                         

    private void btCancelarActionPerformed(java.awt.event.ActionEvent evt) {                                           
        ativaDesativaTF(false);
        limparCampos();
        setBotoes(true, true, false, false, false, false);
        tfId_fornecedor.requestFocus();
    }                                          

   

    // Variables declaration - do not modify                     
    private javax.swing.JButton btAlterar;
    private javax.swing.JButton btCancelar;
    private javax.swing.JButton btExcluir;
    private javax.swing.JButton btFechar;
    private javax.swing.JButton btGravar;
    private javax.swing.JButton btLocalizar;
    private javax.swing.JButton btNovo;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JScrollPane jScrollPane3;
    private javax.swing.JTable jTable1;
    private javax.swing.JTable jTable2;
    private javax.swing.JTable jtFornecedor;
    private javax.swing.JLabel lbData_cadastro;
    private javax.swing.JLabel lbData_compra;
    private javax.swing.JLabel lbDescricao_produto;
    private javax.swing.JLabel lbId;
    private javax.swing.JLabel lbId_fornecedor;
    private javax.swing.JLabel lbId_produto;
    private javax.swing.JLabel lbNomeFornecedor;
    private javax.swing.JLabel lbNomeProduto;
    private javax.swing.JLabel lbNome_razao_fornecedor;
    private javax.swing.JLabel lbTitulo_cad_for_produto;
    private javax.swing.JTextField tfData_cadastro;
    private javax.swing.JTextField tfData_compra;
    private javax.swing.JTextField tfId;
    private javax.swing.JTextField tfId_fornecedor;
    private javax.swing.JTextField tfId_produto;
    private javax.swing.JTextField tfPreco;
    // End of variables declaration                   
    
    private void inicializaProduto(Produtos mProduto) {
        tfId_produto.setText(mProduto.getId());
        tfData_cadastro.setText(formatoData.format(nova_data.getTime()));
        tfData_compra.setText(mProduto.getData_cadastro());
        lbNomeProduto.setText(mProduto.getDescricao());
        tfPreco.setText(mProduto.getPreco_ultima_compra().toString());
    }

    /* 
     * Preenche a tabela de fornecedores do produto
     */
    private void carregarFornecedoresProduto() {
        listaFornecedores = cCFProduto.getListaFornecedorProdController(tfId_produto.getText());
        DefaultTableModel modelo = (DefaultTableModel) jtFornecedor.getModel();
        modelo.setNumRows(0);
        // Inserindo fornecedores na tabela
        int cont = listaFornecedores.size();
        for(int i = 0; i < cont; i++) {
            modelo.addRow(new Object[] {
                listaFornecedores.get(i).getId_cgc_cpf(),
                listaFornecedores.get(i).getNome_razao(),
                listaFornecedores.get(i).getTelefone(),
                listaFornecedores.get(i).getCidade(),
                listaFornecedores.get(i).getEstado()
            });
        }
    }
    
    private void setBotoes(boolean ativa1, boolean ativa2, boolean ativa3, boolean ativa4, boolean ativa5, boolean ativa6) {
        btNovo.setEnabled(ativa1);
        btLocalizar.setEnabled(ativa2);
        btGravar.setEnabled(ativa3);
        btAlterar.setEnabled(ativa4);
        btExcluir.setEnabled(ativa5);
        btCancelar.setEnabled(ativa6);
    }
    
    public void limparCampos() {
        
        tfId.setText("");
        tfId_fornecedor.setText("");
        tfPreco.setText("");
        tfData_compra.setText("");
        tfData_cadastro.setText("");
        
        setBotoes(true, true, false, false, false, false);
        
    }
    
    private void ativaDesativaTF(boolean ativa) {
        
        tfPreco.setEnabled(ativa);
        tfData_compra.setEnabled(ativa);
        tfData_cadastro.setEnabled(ativa);
    
    }    
    
}

/*
Table: fornec_produto getListaFornecedorProd
Columns:
id int AI PK 
id_produto varchar(10) 
id_fornecedor varchar(16) 
preco double 
data_compra datetime 
data_cadastro datetime
*/

O que faço agora?
Atenciosamente,
Ronaldo

Abre com outro editor e altera.
Não faz sentido o NetBeans não deixar você editar seu próprio código.

1 curtida

Não vai dar certo mexer em código gerado, ele vai ser regerado e o erro persistirá. Tem que ir na propriedade apropriada do componente e alterar, usando o construtor de interface gráfica.

1 curtida

Antes de tudo obrigado pelas respostas. Eu acho um tanto quanto confuso esse erro mas ele deve ter sido provocado porque eu fui obrigado a criar um novo projeto maven (antes não era maven) e incluir o projeto antigo. Quase tudo no aplicativo está funcionando mas o botão que abre um JFrame para associação de produtos e fornecedores está dando o seguinte erro:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "java.net.URL.toExternalForm()" because "location" is null

Eu entendi esse erro como se o java tivesse procurado um ícone (porque se trata de um ícone) e por causa da mudança de projeto ele está no lugar errado mas, veja só, quando estou editando a classe que chama o ícone, ele aparece na tela e não dá nenhum problema. Só dá problema de não abrir o JFrame e emitir essa mensagem de erro quando eu executo o aplicativo. Outra coisa, veja um dos endereços que está dando este problema:

btNovo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/novo.gif")));

Essa linha aparece como aquele erro no compilador.

Agora veja a árvore de diretórios do projeto:

image

Nela você pode notar que há um diretório chamado Source Packages e que o diretorio imagens que contem o ícone está dentro dele. No outro projeto acho que não estava. Eis aí a origem do erro. Agora eu não seu como escrever Source Packages no endereço do ícone. Primeiro porque tem espaço e letras maiúsculas e eu não seu como deve ficar na linha abaixo, será que deve ficar assim?

btNovo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Source Packages/imagens/novo.gif")));

Note que eu acho que o espaço que existe entre Source e Package vai atrapalhar a interpretação do endereço. E aí gente como coloco isto na linha do método getResource?

Não sei alterar pelo aplicativo de geração de código então vou abrir o arquivo em outro editor que não seja o NetBeans e digitar o Source Package. Pergunto: o java vai aceitar o espaço entre Source e Package?

Um abraço ao pessoal do GUJ,
Ronaldo

Primeiro o getResource não vai funcionar quando você gerar o JAR da sua aplicação, teria que usar o getResourceAsStream.

Segundo, de acordo com a estrutura do seu projeto, o caminho relativo correto seria "/imagens/novo.gif".