Hallo liebes Forum, ich bastel gerade an nem Programm für das ich eine Jable benötige. Eclipse meckert auch nirgends nur ich bekomme eine NullPointerException. Hier mal der Code:
Bei
bekomme ich die Exception bei
Wo ist da denn ein Problem? RowIndex == 0 entspricht doch dem ersten Element oder nicht?
hier mal der komplette Fehler:
Gruß
Java:
import javax.swing.event.TableModelListener;
import javax.swing.table.TableModel;
public class Tabellenverwaltung implements TableModel{
TableModelListener listener;
Kurs kurse[] = new Kurs[Kurs.objectCounter];
public Tabellenverwaltung(){
kurse[0] = new Kurs("DEFAULT", "DEFAULT", "DEFAULT", "DEFAULT", "DEFAULT", "DEFAULT");
}
@Override
public void addTableModelListener(TableModelListener listener) {
this.listener = listener;
}
@Override
public Class<?> getColumnClass(int arg0) {
return String.class;
}
@Override
public int getColumnCount() {
return 6;
}
@Override
public String getColumnName(int columIndex) {
switch(columIndex)
{
case 0: return "Bezeichnung";
case 1: return "Lehrer";
case 2: return "Klasse";
case 3: return "Fach";
case 4: return "Status";
default: return "Vertretung";
}
}
@Override
public int getRowCount() {
return kurse.length;
}
@Override
public Object getValueAt(int rowIndex, int columIndex) {
switch(columIndex)
{
case 0: return kurse[rowIndex].getBezeichnung();
case 1: return kurse[rowIndex].getLehrer();
case 2: return kurse[rowIndex].getKlasse();
case 3: return kurse[rowIndex].getFach();
case 4: return kurse[rowIndex].getStatus();
default: return kurse[rowIndex].getVertretung();
}
}
@Override
public boolean isCellEditable(int rowIndex, int columIndex) {
return false;
}
@Override
public void removeTableModelListener(TableModelListener listener) {
listener = null;
}
@Override
public void setValueAt(Object arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
}
Bei
Code:
public Object getValueAt(int rowIndex, int columIndex)
Code:
case: 0
hier mal der komplette Fehler:
Code:
11
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Tabellenverwaltung.getValueAt(Tabellenverwaltung.java:66)
at javax.swing.JTable.getValueAt(Unknown Source)
at javax.swing.JTable.prepareRenderer(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI.paintCell(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI.paintCells(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI.paint(Unknown Source)
at javax.swing.plaf.ComponentUI.update(Unknown Source)
at javax.swing.JComponent.paintComponent(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JViewport.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintToOffscreen(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at javax.swing.RepaintManager.paint(Unknown Source)
at javax.swing.JComponent._paintImmediately(Unknown Source)
at javax.swing.JComponent.paintImmediately(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.access$700(Unknown Source)
at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Gruß