Esther: Tabelle neu laden

Beitrag lesen

Hallo Lemmy und Slyh

Ihr habt mich überzeugt, ich habe auf DefaultTableModel und Vectoren umgestellt. Der Code sieht so aus:

public void initTable() {

Vector vData = new Vector();
Vector vColumnNames = new Vector(4);

vColumnNames.add("ID");
vColumnNames.add("Title");
vColumnNames.add("Author");
vColumnNames.add("Date");

for(int i=0; i<=bManager.vBooks.indexOf(bManager.vBooks.lastElement());i++) {
    String rowData[] = new String[4];

rowData[0] = String.valueOf((((Book)bManager.vBooks.elementAt(i)).bookID));
    rowData[1] = (((Book)bManager.vBooks.elementAt(i)).author);
    rowData[2] = (((Book)bManager.vBooks.elementAt(i)).title);
    rowData[3] = (((Book)bManager.vBooks.elementAt(i)).year);

vData.add(rowData);
}

DefaultTableModel dtm = new DefaultTableModel(vData, vColumnNames);
    JTable table = new JTable(dtm);

JScrollPane sp = new JScrollPane(table);
    sp.setBounds(20,150,400,150);
    cp.add(sp);
}

und jetzt hab ich den Schlammasel...:

Exception in thread "main" java.lang.ClassCastException
        at javax.swing.table.DefaultTableModel.justifyRows(DefaultTableModel.jav
a:238)
        at javax.swing.table.DefaultTableModel.setDataVector(DefaultTableModel.j
ava:194)
        at javax.swing.table.DefaultTableModel.<init>(DefaultTableModel.java:131
)
        at BookFrame.initTable(BookFrame.java:147)
        at BookFrame.<init>(BookFrame.java:41)
        at BookFrame.main(BookFrame.java:254)

Was nun? Woran liegt das wohl?

Gruss und Danke für eure Hilfe
Esther