Duvida Jtable - setValueAt

Olá pessoal,

estou com um erro aqui que é o seguinte…

Tenho um metodo limparTabelaProduto() que contem o seguinte conteudo dentro dele:


private void limparTabelaProduto() {


        //Limpa tabela de produtos
        DefaultTableModel model = new DefaultTableModel();

        //areaEstoque é minha Jtable Default
        areaEstoque.setModel(model);
        model.addColumn("Código Produto");
        model.addColumn("Descrição");
        model.addColumn("Qtd Compra");
        model.addColumn("Qtd pedido");
        model.addColumn("Valor compra");
        model.addColumn("Valor venda");

        //inserindo uma linha em branco
        model.addRow(new Vector());


        areaEstoque.getColumnModel().getColumn(1).setPreferredWidth(280);


        listaProdutos = new ArrayList<Produto>();
        listaProdutosAuxiliar = new ArrayList<Produto>();

    }

E após eu ter chamado esse metodo de limparTabelaProduto(), e for cadastrar em seguida novos dados na minha jtable ele acusa o seguinte erro na hora que eu vou dar um setValueAt na minha jtable Default.

Erro: Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: -1

Alguem poderia me ajudar?

Grato.

Você pode postar o código onde vc faz o setValueAt?

Guilherme,

encontrei onde estava o erro cara, a linha q eu estava tentando dar um setValueAt estava com -1, eu estava tentando da um setValueAt da seguitne maneira:

    int linha = areaEstoque.getSelectedRow();  
      
    areaEstoque.getModel().setValueAt(produtoSelecionado.getCodProduto(), linha, 0);  

É pq assim, eu tenho um textfield que se eu pressiono enter dentro dele ele redireciona p/ a jTable atraves do metodo requestFocus(), porem o requestFocus se perde de vez em quando e não é redirecionado para a Jtable ai por isso a linha ficava com -1.

Vc pode me indicar alguma outra maneira de transferir o foco para a jtable sem ser com o metodo requestFocus() ?
(o transferFocus() ja testei e não rola tamb)

Grato.

tente o grabFocus()