Hi,
ich habe ein Problem, dass so Ähnlich schon 2004 behandelt wurde, dort konnte ich aber keine Lösung finden und der thread ist geschlossen, darum ein neuer.
Also mein Problem ist, dass ich eine JList in einem Frame habe und diese gern mit Daten füllen würde, die Daten erhalte ich aus einer SQL Abfrage welche in einer anderen Klasse stattfindet als die Erzeugung des Frames.
Gehe ich nun also in meiner Anwendung soweit das ich besagtes Frame öffne, startet die SQL Abfrage und ruft die gewünschten Daten erfolgreich ab, diese Speicher ich dann in einer Stringarray "derivatList". Lass ich mir dieses Array ausgeben stehen auch alle Werte drin.
Nun gebe ich aus meiner Abfrageklasse das Array zurück an die Frame Klasse und sage dort setListData, erhalte dort aber einen NullPointerException.
Die JList ist korrekt erstellt und auch in der Frameklasse befinden sich zumindest in derivatList[0] Daten. Daher meine Frage: Woher kommt die NullPointerException.
Hier mal noch der betreffende Auszug aus dem Quelltext und die Ausgabe der TestSyso und die Fehlermeldung:
Der Fehler:
trennung
E60
testbereich
Bin für jeden Vorschlag Dankbar,
mkg benni
ich habe ein Problem, dass so Ähnlich schon 2004 behandelt wurde, dort konnte ich aber keine Lösung finden und der thread ist geschlossen, darum ein neuer.
Also mein Problem ist, dass ich eine JList in einem Frame habe und diese gern mit Daten füllen würde, die Daten erhalte ich aus einer SQL Abfrage welche in einer anderen Klasse stattfindet als die Erzeugung des Frames.
Gehe ich nun also in meiner Anwendung soweit das ich besagtes Frame öffne, startet die SQL Abfrage und ruft die gewünschten Daten erfolgreich ab, diese Speicher ich dann in einer Stringarray "derivatList". Lass ich mir dieses Array ausgeben stehen auch alle Werte drin.
Nun gebe ich aus meiner Abfrageklasse das Array zurück an die Frame Klasse und sage dort setListData, erhalte dort aber einen NullPointerException.
Die JList ist korrekt erstellt und auch in der Frameklasse befinden sich zumindest in derivatList[0] Daten. Daher meine Frage: Woher kommt die NullPointerException.
Hier mal noch der betreffende Auszug aus dem Quelltext und die Ausgabe der TestSyso und die Fehlermeldung:
Java:
public static void communicate(String[] derivatList) {
// TODO Auto-generated method stub
//count = derivatList.length;
System.out.println("trennung");
System.out.println(derivatList[0]);
//String [] listData = new String[count];
System.out.println("testbereich");
if (derivatList[0] != null)
Verfügbar.setListData(derivatList);
System.out.println("fehler gefunden");
}
Der Fehler:
trennung
E60
testbereich
Code:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at auditIII.ausleiter.communicate(ausleiter.java:198)
at auditIII.sqlHandler.derivatList(sqlHandler.java:57)
at auditIII.ausleiter.<init>(ausleiter.java:40)
at auditIII.ausleiter.createDerivatWindow(ausleiter.java:166)
at auditIII.MainFrame$1.actionPerformed(MainFrame.java:96)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$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)
Bin für jeden Vorschlag Dankbar,
mkg benni