Patrick: Eventexception

Hi...

Ich habe ein Applet geschrieben, dass unter anderem mit Threads arbeitet (die aber in der destroy() Methode zerstoert werden). Wenn ich mein Applet normal starte laeuft alles ohne Fhler (das Eventhandling meiner Pulldownmenues klappt wunderbar.
Beende ich aber das Applet, durch besuchen eines anderen Frames (destroy() wird aufgerufen) und starte es neu, bei erneutem Besuch des Appletframes, bekomme ich folgende Exception:

java.lang.NullPointerException
 at sun.awt.SunToolkit.postEvent(Unknown Source)
 at sun.awt.windows.WComponentPeer.postEvent(Unknown Source)
 at sun.awt.windows.WComponentPeer.handlePaint(Unknown Source)
 at sun.awt.windows.WToolkit.eventLoop(Native Method)
 at sun.awt.windows.WToolkit.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)

Diese Exception erhalte ich auch weiterhin wenn ich mit der Maus ueber die Pulldownmenues gehe...die Menues sind eingefroren.

Was kann ich tun?! :-(

Cya,
Patrick

  1. Grüssi,

    java.lang.NullPointerException

    Diese Exception erhalte ich auch weiterhin wenn ich mit der Maus ueber die Pulldownmenues gehe...die Menues sind eingefroren.

    Ich kenn deinen Code nicht, aber irgendwo scheint ne try/catch Klause zu fehlen. Schau nach, ob das gefährliche Codestück mit catch abgefangen wird.

    lg regenfeld

  2. Hi
    naja, try/catch hab ich natuerlich drin, aber ich bin mir nicht sicher ob dieser Fehler von mir kommt, da er aus SunToolKit, bzw java.lang.Thread, heraus geworfen wird. In der Testumgebung (Appletviewer) klappt stoppen und starten ohne probleme, nur im IE krachts halt...

    Ciao,
    Patrick

    1. Hallo Patrick

      naja, try/catch hab ich natuerlich drin, aber ich bin mir nicht sicher ob dieser Fehler von mir kommt, da er aus SunToolKit, bzw java.lang.Thread, heraus geworfen wird. In der Testumgebung (Appletviewer) klappt stoppen und starten ohne probleme, nur im IE krachts halt...

      Hast du den Applet-Konverter über die HTML-Seite laufen lassen?
      http://java.sun.com/products/plugin/converter.html

      lg regenfeld

    2. Hi!

      naja, try/catch hab ich natuerlich drin, aber ich bin mir nicht sicher ob dieser Fehler von mir kommt, da er aus SunToolKit, bzw java.lang.Thread, heraus geworfen wird. In der Testumgebung (Appletviewer) klappt stoppen und starten ohne probleme, nur im IE krachts halt...

      So beendet man auch keine Threads. Die Methode destroy() ist außerdem in Thread nicht implementiert (oder zumindest leer), so dass Dein Methodenaufruf nichts tut. Versuche, den Ausstieg über eine Boolean-Varaible zu regeln; hast Du eine Methode in Thread.run(), die blockiert (z.B. InputStream.read()), dann kannst Du diese mit Thread.interrupt() abbrechen, wobei dann dort eine InterruptedException ausgeworfen wird (siehe http://java.sun.com/j2se/1.4/docs/api/java/lang/Thread.html#interrupt()).

      VG Simon

      1. Hallo,

        So beendet man auch keine Threads. Die Methode destroy() ist außerdem in Thread nicht implementiert (oder zumindest leer), so dass Dein Methodenaufruf nichts tut. Versuche, den Ausstieg über eine Boolean-Varaible zu regeln; hast Du eine Methode in Thread.run(), die blockiert (z.B. InputStream.read()), dann kannst Du diese mit Thread.interrupt() abbrechen, wobei dann dort eine InterruptedException ausgeworfen wird (siehe http://java.sun.com/j2se/1.4/docs/api/java/lang/Thread.html#interrupt()).

        Hmmm, ich dachte er meinte die destroy()-Methode des Applets (Lifecycle) ?!

        http://java.sun.com/j2se/1.4/docs/api/java/applet/Applet.html#destroy()

        lg regenfeld