Quote Originariamente inviata da andbin Visualizza il messaggio
Il punto è che per poter istanziare correttamente un Object[][] dovresti sapere a priori quante righe avrai nel result-set. Questo è anche possibile (es. con una query di "count" ad esempio) ma allunga un po', oltre al fatto che potrebbe non essere la soluzione migliore.

Nel tuo caso ti conviene:
1) Usare un List<Object[]> da cui poi ottieni alla fine un Object[][]
oppure
2) Usare un Vector di Vector di Object.

Entrambe le strutture sono appropriate per JTable o direttamente per DefaultTableModel.

I due casi con codice "abbozzato" e minimale (lo completi tu ).

1)
codice:
List<Object[]> listRighe = new ArrayList<Object[]>();

while (rs.next()) {
    String nome = rs.getString("Nome");
    String cognome = rs.getString("Cognome");

    listRighe.add(new Object[] { nome, cognome });
}

Object[][] datiTabella = listRighe.toArray(new Object[0][]);

2)
codice:
Vector datiTabella = new Vector();

while (rs.next()) {
    String nome = rs.getString("Nome");
    String cognome = rs.getString("Cognome");

    Vector riga = new Vector();
    riga.add(nome);
    riga.add(cognome);

    datiTabella.add(riga);
}

In entrambi i casi, alla fine hai 'datiTabella' con tutti i dati.
codice:
List<Object[]> listRighe = new ArrayList<Object[]>();
;

Inserendo questo pezzetto di codice mi dà errore su List,come mai?