Spalten dynamisch zu JTable hinzufügen

Ich habe eine leere JTable, absolut nichts drin. Ich muss seine Tabellenspalten auf eine bestimmte Weise dynamisch generieren. Eine vereinfachte Version des Codes, den ich für meinen Versuch habe:

@Action
public void AddCol() {
    for (int i = 0; i < 10; i++) {
        TableColumn c = new TableColumn(i);
        c.setHeaderValue(getColNam(i));
        table.getColumnModel().addColumn(c);
    }
}

Aber ich bekomme eine

Ausnahme im Thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0> = 0

Was mache ich falsch?

Hier ist der komplette Stacktrace, wenn es hilft:

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
        at java.util.Vector.elementAt(Vector.java:427)
        at javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:632)
        at engine.Processor$UpdateTable.run(Processor.java:131)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Antworten auf die Frage(3)

Ihre Antwort auf die Frage