Wer den Einsatz einer automatisierten Softwareverteilung scheut und stattdessen plant, die Anwendung zentral bereitzustellen, hat mit Applets und Java WebStart zwei browserbasierte Varianten zur Verfügung. Sie unterscheiden sich in ihrem Erscheinungsbild und besonders auch in ihren Möglichkeiten und Einschränkungen.
Java Applets stellen sich dem Nutzer als Teil einer HTML-Seite innerhalb des Browsers dar. Dies macht einerseits den Einsatz einer Softwareverteilung überflüssig, da benötigte Programmdaten direkt vom Web-Server geladen werden. Andererseits entstehen dadurch schwer kontrollierbare Abhängigkeiten. Unterschiedliche Browsertypen oder die Umstellung auf eine neue Browserversion können unvorhergesehen zu Änderungen im Verhalten des Applets führen.
Auch allgemein führt die enge Verzahnung von Browser und Applet zu Problemen. Es kommt ein Faktor hinzu, der Einfluss auf die gefühlte Performance nimmt. Mit jedem erneuten Laden der HTML-Seite wird beispielsweise eine neue Java VM initialisiert und gestartet. In ähnlicher Weise kann die Stabilität des Applets negativ beeinträchtigt werden, da ein Fehlverhalten des Browsers auch auf Applets durchschlägt. Auch in der Bereitstellung von Ressourcen wie beispielsweise dem Arbeitsspeicher für eine Java VM bleiben Applets vom Browser abhängig. Verfügt dieser über ein ungünstiges Speichermanagement, können die für eine VM benötigten Speichermengen unter Umständen nicht zur Verfügung gestellt werden.
Um eine Anwendung als Applet zur Verfügung zu stellen, wird diese in eine oder
mehrere jar
-Dateien gepackt und auf einem
Webserver abgelegt. Zusätzlich muss eine Webseite angeboten werden, die das
Applet integriert. Ein <applet>
-Tag innerhalb der
HTML-Seite bestimmt, an welcher Position im Fenster das
Applet angezeigt werden soll. Das Tag bietet außerdem die Möglichkeit,
zusätzliche Parameter anzugeben, die für die Laufzeit des Applets berücksichtigt
werden sollen. Dies können einerseits Applet Standardparameter sein,
andererseits aber auch solche, die für die spezielle Applikation definiert
sind.
Für die Ausführung von Applet-Integrationen der jadice document platform ist einer der
Standard-Parameter unbedingt zu setzen. Es handelt sich um den Parameter
separate_jvm
dem der Wert
true
zugewiesen werden muss. Die Bereitstellung von
Applets ohne diesen Parameter wird nicht unterstützt.
Da Applets, wie oben beschrieben, durch Download vom Server bei Seitenaufruf
bereitgestellt werden, führt dies zu einer erhöhten Netzwerklast. Um zu
verhindern, dass mit jedem Zugriff ein Download sämtlicher jar
-Files erfolgt, besteht die Möglichkeit,
entsprechende Applet-Parameter zu setzen. Diese bewirken, dass geladene
jar
-Files durch die
VM in einem Zwischenspeicher abgelegt werden. Ein
erneuter Download erfolgt dann nur, wenn eine geänderte Version der Dateien vorliegt.[51]
Zusätzlich zur Konfiguration einzelner Applets über geeignete Parameter kann auch die Java VM selbst parametrisiert werden. Mögliche Einstellungen sind hier beispielsweise der zugewiesene Arbeitsspeicher oder die Definition von System Properties.
Für Java Applets müssen diese Einstellungen auf jedem einzelnen Client Rechner innerhalb des Java Plugins definiert werden. Sie gelten dort für sämtliche Applets, die mit dieser VM gestartet werden.[52]
Da Java-Applets potenziell von unklarem Ursprung über das Internet geladen
werden können, gelten strikte Richtlinien dafür, welche Aktionen innerhalb von
Applets zulässig sind. Per default sind viele Möglichkeiten nicht gegeben,
sodass manche Funktionalitäten der jadice document platform in diesem Fall nicht zur Verfügung
gestellt werden können. Um den vollen Funktionsumfang zu erhalten, existieren
zwei Möglichkeiten: Indem Einstellungen an den Java Policies auf jedem Client
System vorgenommen werden, können Applets zusätzliche Rechte eingeräumt werden.
Diese Einstellungen gelten jedoch für jedes Applet, das auf der so
konfigurierten VM läuft, gleichermaßen und stellen daher
prinzipiell ein Sicherheitsrisiko dar. Die zweite Möglichkeit besteht darin, die
jar
-Dateien des Applets zu signieren
mit einem Zertifikat, das im Trust Store der ausführenden VM
vorliegt. Über diesen Weg wird der Ursprung des Applets als vertrauenswürdig
eingestuft und es werden sämtliche Rechte eingeräumt.
WICHTIG: Die jadice document platform Version 5.4.2.13 ist für den Einsatz als unsigniertes Applet nicht freigegeben. Für gegebenenfalls auftretende Probleme kann kein Support geleistet werden.
Die wichtigsten Punkte, die beim Einsatz der jadice document platform als Applet zu beachten sind, sollen an dieser Stelle nochmals zusammengefasst werden:
Parameter
separate_jvm
mit dem Werttrue
gesetzt? (siehe „Bereitstellung von Applets“)Applet erbt von
JadiceLifeCycleApplet
? (siehe „JadiceLifeCycleApplet
“)TGASwingUtil
wird konsequent verwendet? (siehe „Arbeit mit Swing undTGASwingUtil
“)
[51] Details zur Erkennung von Änderungen an jar
-Files können der offiziellen Java-Dokumentation
entnommen werden. Es existieren verschiedene Möglichkeiten wie
Zeitstempel oder Versionsnummern.
[52] Die unter „WebStart“ beschriebene WebStart Technologie bietet mit Hilfe von JNLP-Files eine Konfigurationsmöglichkeit pro gestarteter Anwendung.