Mit JNLP verteilte Anwendungen automatisch aktualisieren

Bei der Entwicklung von verteilten Java-Anwendungen bieten das Java Network Launching Protocol (JNLP) und Java Web Start attraktive Optionen, zum Beispiel die Möglichkeit der automatischen Installation und Aktualisierung. ZDNet erklärt, was es dabei zu beachten gilt.

Entfernte Clients können unter Verwendung des Java Network Launching Protocol (JNLP) von ihren lokalen Rechnern aus auf Anwendungen zugreifen und sie ausführen. Wie bei Standard-Java-Applets beginnt auch bei den JNLP-Anwendungen der Zugriff auf die Anwendung in einem Webbrowser. Das JNLP lässt sich dabei auf einer sicheren „Sandbox“ auf dem Client-PC beschränken. Allerdings laufen JNLP-Anwendungen anders als Applets nicht innerhalb des Webbrowsers des Clients ab. Dieser dient lediglich als Sprungbrett oder Installationsvehikel für die Anwendung.

JNLP wird als Anwendung namens Web Start implementiert. Damit die Clients auf die JNLP-Anwendungen zugreifen können, muss zuerst Java Web Start installiert werden.

Einer der größten Vorteile, den JNLP-Anwendungen gegenüber gewöhnlichen Client-Anwendungen haben, ist ihre automatische Installation und Aktualisierung. Ist die Anwendung über den Webbrowser auf dem Client installiert, aktualisiert sie sich von selbst, solange der Zugriff auf das Netzwerk besteht. Alle Ressourcen für JNLP-Anwendungen werden über das Netzwerk zur Verfügung gestellt. Es ist also nicht nötig, dass ein Administrator die Anwendungen auf jedem PC installiert und aktualisiert.

Web-Start-Anwendungen sind reguläre Java-Anwendungen, die entsprechend der JNLP-Spezifikationen geschrieben werden. Allerdings gibt es einige Unterschiede, mit denen der Entwickler vor dem Betreten des JNLP-Pfads vertraut sein sollte. Es folgen die wichtigsten Punkte, die bei der Entwicklung von Web-Start-Anwendungen zu berücksichtigen sind:

  • Die Ressourcen einer Web-Start-Anwendung müssen in JAR-Dateien auf dem Server gespeichert werden. Die Anwendung überträgt diese JAR-Dateien an den Client, damit dieser Zugriff hat. Da alle Ressourcen in JAR-Dateien gespeichert sind, muss die Anwendung die getResource()-Methode des Klassenladers verwenden, um auf sämtliche benötigten Dateien zugreifen zu können.
  • Eine Web-Start-Anwendung beginnt wie die meisten anderen Java-Anwendungen mit dem Aufruf der main-Methode. Die Klasse main wird in einer JNLP-Datei definiert. Dabei handelt es sich um eine Datei im XML-Format. Sie enthält andere Konfigurationsinformationen der Anwendung, etwa Beschreibung, Anwendungsicon, Codebasis, Berechtigungen und so weiter.
  • Der Webserver muss so konfiguriert werden, dass er einen speziellen MIME-Typ (application/x-java-jnlp-file) für JNLP-Dokumente bereitstellt. Diese Konfiguration ist in der Regel sehr einfach. Ohne diesen Schritt lässt sich die Anwendung möglicherweise nicht korrekt ausführen.
  • Wie Java-Applets bleibt auch diese Anwendung auf einer „Sandbox“ auf dem Client beschränkt, wenn keine signierten JAR-Dateien verwendet und die Berechtigungen in der JNLP-Datei der Anwendung nicht richtig konfiguriert werden.

Trotz dieser wenigen heiklen Punkte stellt die Verwendung von JNLP und Java Web Start bei verteilten Anwendungen eine interessante Alternative dar. Genauere Informationen zu diesem Thema sowie die Möglichkeit, eine Java-Web-Start-Anwendung auszuprobieren, gibt es auf der Java-Web-Start-Homepage von Sun Microsystems.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Mit JNLP verteilte Anwendungen automatisch aktualisieren

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *