Java Web Start Definition, Beispiel, JNLP Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 1 Definition Technologie zur Auslieferung von Java Anwendungen über das Internet. Web Start Anwendungen bieten: • Einfache Aktualisierung • On- und offline Ausführung Startmöglichkeiten: • Webbrowser Link • Desktop Icon (Link) • Web Start Application Manager Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 2 Beispiel Code !!" !! # # $ % # & ) % ' ( ! $ ' ' *+ , $ $ Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 3 Beispiel JNLP ./ . # ,-0, . , . . .# . . . . ,, .% , -0 !0 '-0 ,1 ,120/3 -0 !40 -0# 5%% # -0 03 3 3 78 9 : .% 3 3 .% 3 ' # ,-0# 5%% # 52!2!% ,-0 3 ; : .% ' %, '0%3 0%3 # ,-0 #%, < -0 #0 # ,-0 1 %3 3 . )3. . 3 . 6 . .% . .% 3 # ,-0 3 1 1 %3.% -0 =40%3 0%3 %, 52!2!% 6% %0 0 6%, 0%3 3 '0%3 0%3 )3 0%3 1 Pratikum SWE 2 -0 0%3 © M. Löberbauer, T. Kotzmann, H. Prähofer 4 Beispiel Installieren Kompilieren In JAR verpacken • jar cf <Dateiname>.jar { <ClassDatei>.class } - z.B.: jar cf first.jar First.class Signieren • Ev. Schlüssel mit < )' >' < ) erstellen • jarsigner <Dateiname>.jar <Key Alias> - z.B.: jarsigner first.jar mykey first.jnlp Auf Webserver kopieren Zur Client-Installation mit Browser aufrufen first.jar • http://localhost:8080/swe2/jaws/first.jnlp Ausführen über: • Browser • WebStart Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 5 Beispiel Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 6 Java Network Launching Protocol Syntax 1/3 <jnlp> • • • • spec: Beschreibt die Spezifikation (Standard: "1.0+"). codebase: Auf diese Basis beziehen sich alle relativen Angaben. href: URL auf diese jnlp-Datei <security>, <information>, <resources>, <application-desc>, <applet-desc> <security> • <all-permissions/>: Zugriff auf alle Systemresourcen (Disk, Netz). <information> • • • • <title>Name der Anwendung</Title> <vendor>Hersteller</vendor> <homepage href="Homepage der Anwendung"/> <description>Beschreibung der Anwendung</description> - kind="one-row | short | tool-tip" • <icon> - href="Adresse des Icons" - kind="splash": Zeigt an das dieses Icon als "Splashscreen" genutzt wird. • <offline-allowed/> Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 7 Java Network Launching Protocol Syntax 2/3 <resources> • <jar> - href="Adresse des Java Archives der Anwendung" - download="lazy | eager" • <nativelib> - href="Adresse der Bibliotheken" - download="lazy | eager" • <j2se> - version="1.4+" - initial-heap-size="64m" - href="http://java.sun.com/products/autodl/j2se" Kann nur bei exakter angabe der Version erfolgen (z.B.: version="1.4.2_02") • <property>: Abfragen mit System.getProperty oder System.getProperties - name="Name" - value="Wert" Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 8 Java Network Launching Protocol Syntax 3/3 <application-desc> • <argument>Argument</argument> - Kann beliebig oft vorkommen (erstes Vorkommen Argument 1, zweites Argument2, usw.) - Diese Argumente werden an main übergeben. • main-class="Klassenname der Hauptklasse" - Kann fehlen, wenn im Manifest bereits angegeben. <applet-desc> • document-base="Adresse des Applets" • name="Name des Applets" • main-class="Hauptklasse des Applets" - Kann fehlen, wenn im Manifest bereits angegeben. • width="Breite" • height="Höhe" • <param> - name="Name" - value="Wert" Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 9 Zusammenfassung Infrastruktur zur Auslieferung Einfache Updates Unterstützung für Anwendungen und Applets Links • Allgemein - http://java.sun.com/products/javawebstart/ • JNLP - http://java.sun.com/j2se/1.4.2/docs/guide/jws/developersguide/syntax.html • Jar-Manifest - http://java.sun.com/j2se/1.4.2/docs/guide/jar/jar.html#Manifest%20Specification Pratikum SWE 2 © M. Löberbauer, T. Kotzmann, H. Prähofer 10