2009-03-12 12 views
1

Ich versuche, ein Problem mit unserem Java-Applet-basierten Programm auf den Grund zu gehen. Es nimmt ziemlich regelmäßig mit einer nicht reagierenden GUI (oder einem weißen Bildschirm) auf. Dies geschieht natürlich nur, wenn es auf einer Kundenseite implementiert wird :-(. Sie betreiben eine Version der Sun JVM in 1.5-Serie (nicht sicher die genaue Version).Java applet white screen

Wir haben eine Theorie, dass es mit dem Applet zu tun hat Der andere Platz, den ich auf meinem Computer eingerichtet habe, ist das Deaktivieren des direkten Zeichnens, aber das war hauptsächlich, um seltsame Artefakte in anderen Anwendungen zu vermeiden.

Sie sehen das Problem auf Citrix und auf den regulären PCs, aber offensichtlich gibt es eine Grenze, was die Benutzer auf Citrix tun können.

Irgendwelche Vorschläge?

+0

meine Vermutung ist, Fäden oder deren Fehlen –

Antwort

2

Wenn der Heap-Speicher ausgeht, sollte OutOfMemoryError ausgelöst werden. Dieser Fall klingt wie ein typischer Deadlock. Um zu finden, wo das ist, wollen Sie einen Stack-Dump aller Threads. IIRC < Sie können es über die Konsole tun, oder von IIRC 1.6 das JDK enthält jps und jstack.

+0

Danke - ich werde sehen, womit sie zurückkommen. Ich erwarte, dass die Konsole diesen oder den nicht ausreichenden Speicherfehler anzeigt. –

0

Um das Problem zu lösen, müssen Sie zunächst das Problem reproduzieren können. Sie benötigen ein identisches System, um das Problem zu beheben, indem Sie eine Änderung nach der anderen vornehmen, während alle anderen gleich bleiben, um die Ursache (n) zu bestimmen.

+0

„Um das Problem zu lösen , Sie müssen zuerst in der Lage sein, das Problem zu reproduzieren. " Nicht wahr. Es hilft, aber Sie werden nie ein System genau wie das System haben, auf dem es auftritt. –

+0

Absolut - Ich habe keinen Zugang zu einem Citrix System für den Anfang oder 40 gleichzeitige Benutzer, selbst wenn ich es getan hätte! –

1

Stellen Sie zunächst sicher, dass der Kunde die neueste Version der JVM verwendet, die er verwendet, und aktivieren Sie die Java-Konsole in seinem Browser (dies erfordert einige Nachforschungen von Ihnen).

Wenn es erneut passiert, sagen Sie ihnen, dass sie sich das Konsolenfenster ansehen und den Inhalt in einer E-Mail einfügen sollen.

0

Nur um diese Antwort hinzuzufügen (um die Wissensbasis zu erstellen, wie ich das derzeit untersuche).

Es gibt (mindestens) zwei verschiedene weiße Bildschirme, die sich auf Applets beziehen.

  1. Deadlock (wie von Tom erwähnt) - Bereich wird nicht aktualisiert, wenn Sie ein Fenster vor ihm ziehen, so dass Sie die seltsamen Schwänzen links Effekt.

  2. VM Crash - Bereich wird weiß werden, schließt Java VM (für hs_err_pid suchen * .log, Standort auf Browser abhängig)