Java-Applet

Aus Kefk

Wechseln zu: Navigation, Suche

Ein Java-Applet ist ein Computerprogramm, das in der Programmiersprache Java verfasst wurde, und normalerweise in einem Webbrowser ausgeführt wird.

Java-Applets wurden eingeführt, um Programme in Web-Seiten ablaufen lassen zu können, die im Webbrowser (auf der Client-Seite) arbeiten und direkt mit dem Benutzer interagieren können, ohne Daten über die Leitung zum Server versenden zu müssen.

Java-Applets waren Ende der 1990er Jahre ein Hauptgrund für den Erfolg und die schnelle Verbreitung von Java.

Neben Applets existieren auch Servlets, das sind ebenfalls Java-Programme, die allerdings auf dem Server ausgeführt werden.

Inhaltsverzeichnis

Java-Applets im Internetbrowser

Üblicherweise werden Java-Applets von HTML-Seiten aufgerufen. Um sie ausführen zu können, muss der jeweilige Webbrowser über eine entsprechende Java-VM verfügen. Diese VM, die Laufzeitumgebung für das Java-Applet, kann entweder Teil des entsprechenden Browsers sein, oder in Form eines Plugins nachträglich installiert werden (z.B. JRE 5 von Sun, siehe Weblinks). Eine weitere Möglichkeit besteht darin, dass der Browser - wie im Fall von Opera - direkt mit der VM in Verbindung tritt, also ohne Umweg über ein Plugin.

Beispiele für Internetbrowser mit integrierter Java-VM

(Der Funktionsumfang dieser VMs entspricht nur der JDK-Version 1.1, sie sind aus heutiger Sicht im Grunde veraltet. Eine aktuelle VM lässt sich aber nachinstallieren, siehe Weblinks)

Beispiele für Internetbrowser ohne integrierte Java-VM

(Um mit diesen Browsern Applets nutzen zu können muss eine VM nachinstalliert werden, siehe Sun Java VM für Browser)

  • Mozilla und alle darauf basierenden Browser, wie Netscape Navigator 6.x und 7.x oder Mozilla Firefox
  • Opera
  • Auch der Internet Explorer kann dazu befähigt werden, auf die externe VM zuzugreifen. Ein Vorteil besteht z.B. darin, dass dadurch eine modernere VM zur Verfügung steht, da die standardmäßig verwendete MSJVM veraltet und fehlerbehaftet ist.

Appletprogrammierung

Die Einbindung des Applets in den HTML-Code von Webseiten erfolgt mit dem OBJECT-Tag, dem APPLET-Tag oder dem EMBED-Tag. Alle Java-Applets werden von der Java-Klasse java.applet.Applet abgeleitet. Sie verfügen unter anderen über die folgenden Methoden, jedoch nicht über eine Methode main(), wie sie für Java-Anwendungen benötigt wird.

  • init() - wird genau einmal aufgerufen, wenn das Applet erstmals in den Browser geladen wird.
  • start() - wird jedes Mal aufgerufen, wenn das Applet sichtbar wird.
  • paint(...) - Zeichenmethode für die Anzeigefunktionen des Applet
  • stop() - wird jedes Mal aufgerufen, wenn das Applet verdeckt wird, z. B. weil das Browser-Fenster von einem anderen Fenster überdeckt wird.
  • destroy() - wird aufgerufen, wenn das Applet aus dem Hauptspeicher entladen wird.

Für die Programmierung der Benutzeroberfläche können die beiden Techniken Swing oder AWT verwendet werden. Jedoch ergibt sich die Einschränkung, dass das in die HTML-Oberfläche eingebettete Fenster nicht programmgesteuert geschlossen werden kann, man kann aber zusätzliche Fenster aufmachen.

Sicherheit

Applets werden auf dem Rechner des Anwenders ausgeführt und stellen daher - wie jedes lokal ausführbare Programm - ein Sicherheitsrisiko dar. Da die Applets in einer abgeschotteten Laufzeitumgebung (Sandbox) laufen, ist dieses Risiko jedoch gut kontrollierbar. Ein Sicherheitsrisiko durch "böswillige" Applets besteht nur, wenn die Sandbox fehlerhaft ist.

Einsatzbereiche, Vorteile und Nachteile

Die Applet-Technologie bietet dem Programmierer den vollen Funktionsumfang aus der J2SE-API unter Berücksichtigung der Sicherheitsregeln und eignet sich sehr gut für Anwendungen in gepflegten Firmennetzen, bei denen alle Anwender die gleiche Java-Version haben. In Zusammenarbeit z. B. mit Servlets oder Application Servern lassen sich komplexe Anwendungen erstellen, die auf diese Weise auf die Installation lokaler Software verzichten und ohne großen Aufwand mit unterschiedlichen Browsern und Betriebssystemen laufen können.

Ein gravierender Nachteil für den Einsatz im Internet und an langsamen Netzwerkanschlüssen ist aber die Größe der JRE mit 12,5 MB (Stand JRE 6.0). Zudem verlangen Anwendungen (z. B. Homebanking) manchmal zwingend nach veralteten Java-Versionen, die nicht gleichzeitig mit der aktuellen Version eingesetzt werden können. Ein weiterer Nachteil ist auch eine teilweise lange Initialisierungszeit für die JVM, wenn diese nicht geladen ist, und die Zeit, die das Applet zum Herunterladen und Initialisieren benötigt.

Siehe auch

  • Im Gegensatz zum Applet läuft eine „Java-Anwendung“ als eigenständiges Java-Programm außerhalb des Browsers.

Weblinks

Persönliche Werkzeuge