Problemas com AbstractTableModel

0 respostas
L

Olá pessoal;

Estou com problema ao inserir mais de um registro por ver, pois na minha tableModel aparece em todas as linhas, os dados do último registro que adiciono.

Abaixo imagens de como isso está acontecendo na aplicação.

[url]https://www.dropbox.com/s/kh299hjhzocl85o/img1.JPG[/url]
[url]https://www.dropbox.com/s/4rbgtjdas8fo7zt/img2.JPG[/url]

Como mostra na imagem 2, o registro de código 2 foi alterado e está igual ao último registro lançado (3).

Alguém sabe o que pode está acontecendo.

Esse é o método pra salvar dentro do meu frame
private void b_salvarActionPerformed(java.awt.event.ActionEvent evt) {
        pegar_dados();
        DAOGenerico dao = new DAOGenerico(conSup);
        dao.Inserir();
        
        limpar_dados();
        model.adicionar(conSup);
      
    }
Método de salvar dentro do tableModel
public void adicionar(ConSupervisor sup){
            // Adiciona o registro
            linhas.add(sup);
            
            int ultimoIndice = getRowCount() -1;
            fireTableRowsInserted(ultimoIndice, ultimoIndice);
        }
Método para preencher minha tabela
public void preencher_tabela(){
        t_supervisor.getColumnModel().getColumn(0).setPreferredWidth(10); // Campo - Cod. Sup.
        t_supervisor.getColumnModel().getColumn(1).setPreferredWidth(45); // Campo - Supervisor = Nome
        t_supervisor.getColumnModel().getColumn(2).setPreferredWidth(45); // Campo - Região
                 
        try{
            Session sessao = exibir.openSession();//Inicio da sessão
            
            // Listar supervisores
            lista_supervisor = sessao.createQuery("from ConSupervisor").list();//         
            
            //cria o modelo de ConSupervisor
            model = new SupervisorTableModel1(lista_supervisor);
            
            //impressão de teste para verificar o tamanho da lista
            System.out.println("Tamanho da lista: "+lista_supervisor.size());

            t_supervisor.setModel(model);
         
            sessao.close();
        }catch(Exception erro){
            JOptionPane.showMessageDialog(null, "Erro ao listar tabela de supervisores!  "+erro);
        }
    }
Criado 8 de fevereiro de 2013
Respostas 0
Participantes 1