NullPointer verwirrt mich total.

Status
Nicht offen für weitere Antworten.

medic

Neues Mitglied
Servus Forum.

Ich habe gerade ein Problem, das ich mir nicht erklären kann. Im wesentlichen geht es darum, dass ich eine NullPointerException erhalte, die ich nicht verstehen kann.

Ich verwende das JDK 1.6.0_05.

Die Exception fliegt in der Methode getRowCount() meiner Klasse und eine Debug-Ausgabe gibt auch an, dass das Objekt NULL ist.
Allerdings wird das Objekt bei der Erzeugung der Instanzvariable schon initialisiert. Außerdem wird ihm im Konstruktor eigentlich ein Wert zugewiesen. (Dieser ist definitiv nicht NULL; mit Debug-Ausgabe überprüft)

Des Weiteren findet sich in der Ausgabe von log4j kein Hinweis darauf, dass der Konstruktor überhaupt durchlaufen wird.


Hoffe einer von euch sieht vielleicht meinen Fehler. Ich bin da gerade vollkommen blind dafür. :-/

Danke

PS: Die NPE fliegt beim Zugriff auf die Instanzvariable iCalendar (definiert in CalendarTableModel) aus der Methode getRowCount heraus

Erzeugte Ausgabe:
*************************************************************************************
2008-04-01 18:50:50,297 DEBUG [main] SteuerhelferTest: Installed loggers
2008-04-01 18:50:50,334 DEBUG [main] CalendarTableModelTest: testCalendar
2008-04-01 18:50:50,335 DEBUG [main] CalendarTableModelTest: Calendar =====>java.util.GregorianCalendar[time=1207068650334,areFieldsSet=true,
areAllFieldsSet=true,lenient=true,
zone=sun.util.calendar.ZoneInfo[id="Europe/Berlin",offset=3600000,dstSavings=3600000,
useDaylight=true,transitions=143,lastRule=java.util.SimpleTimeZone[id=Europe/Berlin,
offset=3600000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,
startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,
endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],
firstDayOfWeek=2,minimalDaysInFirstWeek=4,ERA=1,YEAR=2008,MONTH=3,
WEEK_OF_YEAR=14,WEEK_OF_MONTH=1,DAY_OF_MONTH=1,
DAY_OF_YEAR=92,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=1,
AM_PM=1,HOUR=6,HOUR_OF_DAY=18,MINUTE=50,SECOND=50,
MILLISECOND=334,ZONE_OFFSET=3600000,DST_OFFSET=3600000]
2008-04-01 18:50:50,337 DEBUG [main] CalendarTableModel: getRowCount null




Zum Code:


Einstiegspunkt in den jUnit-Test
=====================================================================
Code:
  public static Test suite()
  {
    DOMConfigurator.configure("log4j.xml");
    cLogger.debug("Installed loggers");
    TestSuite suite = new TestSuite("Test for de.bonnland.steuerhelfer.test");
    //$JUnit-BEGIN$
    suite.addTest(DRTestSuite.suite());
    suite.addTest(DRGraphicalTestSuite.suite());
    //$JUnit-END$
    return suite;
  }

=====================================================================

Einer der Tests: (CalendarTableModelTest)
=====================================================================
Code:
  public void testCalendar() throws Exception
  {
    cLogger.debug("testCalendar");
    GregorianCalendar tCalendar = new GregorianCalendar();
    
    cLogger.debug("Calendar =====>" + tCalendar);
    CalendarTableModel tModel = new CalendarTableModel(tCalendar);
    tCalendar.set(2008, 3, 1);
    
    assertEquals(6, tModel.getRowCount());
  }
=====================================================================

CalendarTableModel: (Auszug)
=====================================================================
Code:
 private Calendar iCalendar = new GregorianCalendar();
  
 **** Das ist der einzige Konstruktor
  public CalendarTableModel(Calendar aCalendar)
  {
    cLogger.debug("Calendar-Parameter" + aCalendar);
    iCalendar = aCalendar;
  }
=====================================================================

Die Methode getRowCount(): (Hier fliegt die Exception)
=====================================================================
Code:
  public int getRowCount()
  {
    cLogger.debug("getRowCount " + iCalendar);
    int tRowCount = 1;
    iCalendar.set(Calendar.DAY_OF_MONTH, 1);

   **** hier kommt noch einiges, aber die NPE fliegt in der letzten Zeile
}
 
G

Guest

Gast
medic hat gesagt.:
Allerdings wird das Objekt bei der Erzeugung der Instanzvariable schon initialisiert. Außerdem wird ihm im Konstruktor eigentlich ein Wert zugewiesen.
Was soll eigentlich die erste Erzeugung? Die anschließende Zuweisung im Konstruktor macht diese doch völlig überflüssig.

Poste mal den StackTrace der NPE.
 

quippy

Bekanntes Mitglied
Debugge es... Im Einzelschritt wird Dir vielleicht auffallen, was da passiert. Ich vermute, daß der Unit-Test eine alte Class-Version erwischt, in welcher der Konstruktor fehlt. Ferner ist die Zusweisung "private Calendar iCalendar = new GregorianCalendar();" doch recht überflüssig - auf der anderen Seite dürfte damit - auch wenn der Konstruktor z.B. wg. eines Tippfehlers nicht ausgeführt würde - die NPE gar nicht auftreten!
 

medic

Neues Mitglied
Ich weiß, dass es überflüssig ist, aber ich wollte diese "Fehlerquelle" ausschließen.

Habe den Fehler mittlerweile gefunden: Der super() Konstruktor ruft die Methode auf.

Hätte man ganz leicht haben können, wenn man denn nicht total blind für den StackTrace wäre :-(

Sorry Jungs und danke
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Kann ich die Nullpointer Exception umgehen Allgemeine Java-Themen 12
D Nullpointer Exception Problem Allgemeine Java-Themen 5
Kirby.exe Nullpointer Exception bei Queue Allgemeine Java-Themen 5
N Compiler-Fehler Warum erhalte ich einen Nullpointer Fehler? Allgemeine Java-Themen 2
M javafx ComboBox- Nullpointer Exception Allgemeine Java-Themen 6
T Nullpointer. :( Allgemeine Java-Themen 31
0 Animiertes Gif anzeigen - NullPointer Exception Allgemeine Java-Themen 19
L Nullpointer Exceptions werden nicht angezeigt Allgemeine Java-Themen 5
W Threads NullPointer: Konstruktor "zu langsam"? Allgemeine Java-Themen 3
I NullPointer während while(){} Allgemeine Java-Themen 4
G Nullpointer trotz vorherigem Nullcheck Allgemeine Java-Themen 2
V Array aus Instanzen, NullPointer Allgemeine Java-Themen 4
E YQL Api Test - NullPointer Allgemeine Java-Themen 9
A Compiler-Fehler Woher kommt der NullPointer? (Collections & Iterator) Allgemeine Java-Themen 7
D Nullpointer abfangen Allgemeine Java-Themen 7
B Nullpointer Exception in Array Allgemeine Java-Themen 15
H NullPointer finde den grund nicht Allgemeine Java-Themen 9
Z NullPointer in einem VO Allgemeine Java-Themen 14
M Nullpointer Exeption bei String Array Allgemeine Java-Themen 9
A NullPointer bei System.getProperty("file.seperator") Allgemeine Java-Themen 4
A NullPointer bei konvertierung von byteArr --> Object Allgemeine Java-Themen 3
G NullPointer. in einer Datenstruktur Allgemeine Java-Themen 2
H Nullpointer exception, Attribute in Label schreiben? Allgemeine Java-Themen 4
G Nullpointer Exception nach KeyPressed Allgemeine Java-Themen 6
G NullPointer ? wieso? Allgemeine Java-Themen 7
M HashMap - Ich bin verwirrt Allgemeine Java-Themen 3
M Welche Umgebung und Frameworks für mich als Umsteiger Allgemeine Java-Themen 6
Messoras Der BufferedReader mag mich nicht Allgemeine Java-Themen 47
P String ärgern mich Allgemeine Java-Themen 8
H URLConnection - Es wurmt mich :-/ Allgemeine Java-Themen 4
U Kann mich nicht entscheiden! Allgemeine Java-Themen 5
P JMF macht mich verrückt Allgemeine Java-Themen 3
P Ist Java überhaupt das Richtige für mich? Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben