Das wird jetzt ein bisschen was Längeres.
Ich bin grad auf einen Fehler gestoßen bei dem ich nicht weiß woher er
kommt. Der Fehler wird in "EventDispatchThread.class" ausgelöst. Wenn mir da
jemand weiterhelfen kann dann bitte, bitte, bitte helft!
Ich habe folgende Imports:
import java.util.*;
import java.util.Vector;
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.text.SimpleDateFormat;
import java.util.Date;
Ich will ein Datum das ich mit einem String gespeichert habe in ein
JTextField mit setText() einlesen. Das ganze wird ausgelöst durch einen
"ListSelectionListener" einer JList. Dabei bekomme ich dann auf der Konsole
folgende Zeilen zu sehen:
java.lang.NullPointerException
at java.util.Calendar.setTime(Calendar.java:902)
at java.text.SimpleDateFormat.format(SimpleDateFormat.java:782)
at java.text.SimpleDateFormat.format(SimpleDateFormat.java:775)
at java.text.DateFormat.format(DateFormat.java:314)
at schulnoten.Schueler.getGeburtstag(Schueler.java:153)
at schulnoten.Klasse$1.valueChanged(Klasse.java:251)
at javax.swing.JList.fireSelectionValueChanged(JList.java:1321)
at javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:1335)
at
javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionM
odel.java:187)
at
javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionM
odel.java:167)
at
javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionM
odel.java:214)
at
javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionMo
del.java:402)
at
javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionMo
del.java:411)
at
javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelect
ionModel.java:435)
at javax.swing.JList.setSelectionInterval(JList.java:1608)
at
javax.swing.plaf.basic.BasicListUI$MouseInputHandler.adjustFocusAndSelection
(BasicListUI.java:1333)
at
javax.swing.plaf.basic.BasicListUI$MouseInputHandler.mousePressed(BasicListU
I.java:1295)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:222)
at java.awt.Component.processMouseEvent(Component.java:5097)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3195)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja
va:201)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java
:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
java.lang.NullPointerException
at java.util.Calendar.setTime(Calendar.java:902)
at java.text.SimpleDateFormat.format(SimpleDateFormat.java:782)
at java.text.SimpleDateFormat.format(SimpleDateFormat.java:775)
at java.text.DateFormat.format(DateFormat.java:314)
at schulnoten.Schueler.getGeburtstag(Schueler.java:153)
at schulnoten.Klasse$1.valueChanged(Klasse.java:251)
at javax.swing.JList.fireSelectionValueChanged(JList.java:1321)
at javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:1335)
at
javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionM
odel.java:187)
at
javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionM
odel.java:157)
at
javax.swing.DefaultListSelectionModel.setValueIsAdjusting(DefaultListSelecti
onModel.java:554)
at javax.swing.JList.setValueIsAdjusting(JList.java:1675)
at
javax.swing.plaf.basic.BasicListUI$MouseInputHandler.mouseReleased(BasicList
UI.java:1371)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:232)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja
va:201)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java
:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
Es ist eine NullPointerException in Calendar#setTime(Date). Ich glaube du
liest den StackTrace falsch herum.
Dein Fehler ist in der Methode Schueler#getGeburtstag(). Dort springt der
Fluss jedenfalls aus deinem Code raus.
>Wenn mir da
> jemand weiterhelfen kann dann bitte, bitte, bitte helft!
>
> Ich habe folgende Imports:
>
[snip]
Code wäre hilfreicher als die Import Liste. Z.B. der Code der Klasse
Schueler.
>
>
>
> Ich will ein Datum das ich mit einem String gespeichert habe in ein
> JTextField mit setText() einlesen. Das ganze wird ausgelöst durch einen
> "ListSelectionListener" einer JList. Dabei bekomme ich dann auf der
Konsole
> folgende Zeilen zu sehen:
>
>
>
> java.lang.NullPointerException
>
> at java.util.Calendar.setTime(Calendar.java:902)
diese Methode wirft als erstes.
>
> at java.text.SimpleDateFormat.format(SimpleDateFormat.java:782)
>
> at java.text.SimpleDateFormat.format(SimpleDateFormat.java:775)
>
> at java.text.DateFormat.format(DateFormat.java:314)
>
> at schulnoten.Schueler.getGeburtstag(Schueler.java:153)
Zeile 153 solltest du dir mal anschauen oder die Klasse posten.
[snip Aufrufer]
Gruß
Sebastian
Die Importe sind unwichtig, wo ist der Code? Zumindest die Methode
getGeburtstag scheint doch von Dir zu sein und hätte hier mal abgedruckt
werden sollen.
> java.lang.NullPointerException
>
> at java.util.Calendar.setTime(Calendar.java:902)
>
> at java.text.SimpleDateFormat.format(SimpleDateFormat.java:782)
>
> at java.text.SimpleDateFormat.format(SimpleDateFormat.java:775)
>
> at java.text.DateFormat.format(DateFormat.java:314)
>
> at schulnoten.Schueler.getGeburtstag(Schueler.java:153)
Tja, dort übergibst Du woll "null". Solltest Du vermutlich nicht tun, aber
genaueres, wenn es Code gibt.
Gruß,
Daniel
Mist, jetzt habe ich doch auf ein Posting von jemanden geantwortet, der sich
nicht an die Nettiquette hält. :-(
> java.lang.NullPointerException
Irgendeins deiner Objekte existiert noch nicht, bzw. == null.
Michael.
P.S.: Realname wäre nett.
Na ... wird sind aber auch nicht mehr ganz koscha und etwas OFF-Topic
(Betreff) ;-))
lg,
Philip
Sascha
1. Die methode get Geburtstag:
public String getGeburtstag() {
return sdf.format(geburtstag);
}
Wenn ich eine neue Instanz von Schueler anlege und kein Geburtstag vorhanden
ist, dann speichere ich "Geburtstag n/a" in die String Variable ab. also
nicht "Geburtstag = null"
Das komische ist, dass es auf der Konsole ohne Fehler angezeigt wird.
2. Die Formatierung von SimpleDateFormat sdf:
sdf.applyPattern("dd.MM.yy");
Ich hatte nicht gedacht, dass das an meinem Code liegt, da er ja ohne das
JList wunderbar funktioniert. Ergo, keine Verletzung der Nettickette (oder
wie auch immer man das schreibt...). Sorry wenn ich damit manchen vor den
Kopf gestoßen hab.
Robin
p.s.: Wenn mein Name nicht angezeigt wird, dann seh ich das leider nicht.
Eingegeben habe ich ihn in meinem Newsreader und ich seh ihn auch als
Absender. Keine Ahnung woran das liegen könnte.