# Applet beendet nicht nur sich selbst



## amateur (30. Aug 2006)

Hallo,

hab mal wieder ein Problem. Und zwar.

Ich habe ein Applet, das auch einwandfrei funktioniert. Nur wenn ich es beende dann wird nicht nur das Applet beendet, sondern alle laufenden JAVA-Anwendungen und auch Internetseiten. Teste ich das Applet via Eclipse macht er das nicht, nur wenn ich es über den Browser starte. :bahnhof: 

Hat vielleicht irgendjemand eine Idee, woran das liegen könnte?

Gruss amateur


----------



## KSG9|sebastian (30. Aug 2006)

code ?


----------



## Wildcard (30. Aug 2006)

Welchen Browser benutzt du? Welche JRE?
Schon versucht einen anderen Browser zu verwenden, oder eine neue JRE zu installieren?


----------



## Gast (30. Aug 2006)

Sobald ich auf den Beenden Button drücke, wird System.exit aufgerufen und daraufhin beendet er alles. 

IE, 1.5
Browser und JRE kann ich nicht verändern, wird in der Firma vorgegeben.


----------



## amateur (30. Aug 2006)

Login vergessen!

Das oben war ich.

Gruss amateur


----------



## amateur (30. Aug 2006)

OK, hab jetzt gelesen, dass man ein Applet nicht mit System.exit beenden darf.   

Hat jemand eine Idee, wie ich trotzdem das Applet via Buttondruck beenden kann?

Gruss amateur


----------



## hupfdule (30. Aug 2006)

Gast hat gesagt.:
			
		

> Browser und JRE kann ich nicht verändern, wird in der Firma vorgegeben.


Trotzdem solltest du es mal testen, um sicher zu gehen, dass es nicht daran liegt, bzw. dem Problem vlt. näher zu kommen.


----------



## Wildcard (30. Aug 2006)

So wirklich beenden kann man ein Applet glaube ich gar nicht. Das verschwindet ja nicht einfach von der Seite.
Du könntest aber ein unsichtbares Applet nehmen und darin einen JDialog oder JFrame öffnen (oder Webstart benutzen)


----------



## amateur (30. Aug 2006)

Hm, kann man via Java das Browserfenster schließen?
Also nur das Fenster in dem das Applet läuft?

Gruss amateur


----------



## Wildcard (30. Aug 2006)

Soweit ich weiß kannst du nur mit getAppletContext().showDocument(url); eine andere Seite anzeigen lassen.


----------



## amateur (30. Aug 2006)

Schade.  

Eine neue Seite anzeigen zu lassen kommt leider nicht in Frage, da ja dann wieder die Möglichkeit besteht das Applet erneut zu laden, was nicht geschehen darf.

Da bleibt mir nur die Möglichkeit, den Button zu entfernen.

Trotzdem danke für die Hilfe.

Gruss amateur


----------



## Wildcard (30. Aug 2006)

amateur hat gesagt.:
			
		

> Eine neue Seite anzeigen zu lassen kommt leider nicht in Frage, da ja dann wieder die Möglichkeit besteht das Applet erneut zu laden, was nicht geschehen darf.


Wie willst du denn das verhindern?


----------



## amateur (30. Aug 2006)

Hab mich etwas falsch ausgedrückt.

Dieses Applet darf immer nur von einem Benutzer gestartet werden, deshalb muss beim Beenden des Applets auch das Browserfenster geschlossen werden. 
Stelle ich aber nur eine neue Seite dar, bleibt ja das Browserfenster geöffnet, was ich nicht will, da ja dieser Benutzer dann die Möglichkeit besitzt, das Applet erneut zu starten, ohne vorherige Überprüfung, ob das Applet bereits von jemanden anderen in Gebrauch ist.


Gruss amateur


----------



## Wildcard (30. Aug 2006)

Da macht es doch absolut keinen Unterschied ob das Browserfenster noch offen ist oder nicht  ???:L


----------



## L-ectron-X (30. Aug 2006)

Für diesen Fall musst du start() und stop() überschreiben und mit sinnvollem/passenden Code füllen.

Und: Ein Applet hat nicht die Rechte die VM zu beenden. Das macht der Browser.


----------



## Leroy42 (30. Aug 2006)

amateur hat gesagt.:
			
		

> ohne vorherige Überprüfung, ob das Applet bereits von jemanden anderen in Gebrauch ist.



Das löst du am elegantesten, indem dein Applet eine Verbindung mit dem Server herstellt
der sich dann merken muß wann jemand das Applet aufgerufen oder _beendet_ hat, und
sich dementsprechend nicht mehr bedienen läßt. (Anstatt der normalen GUI kommt nur eine Fehlermeldung)


----------



## amateur (31. Aug 2006)

Habs jetzt hinbekommen.  :lol: 

Danke für eure Hilfe.  :toll: 

Gruss amateur


----------

