Webstart Webstart einer Applikation mit einer veralteten JNLP-Datei

SilencerandLois

Aktives Mitglied
Hallo,
ich habe ein Problem mit beim Starten einer Applikation mit Webstart:
Der Download-Prozess von Java WebStart brach an einer Stelle ab ("Anwendung
konnte nicht gestartet werden"). In der Detailansicht der Fehlermeldung wurde
dann auf eine fehlende Datei "jts-1.10.jar" verwiesen und eine JNLP-Datei mit
folgendem Inhalt angezeigt:
[XML]
<jar href="./BISClient/lib/jts-1.10.jar"/>
[/XML]

Ursache war also, dass am jeweiligen Rechner offenbar die
JNLP-Datei des Clients noch in einem Cache vorhanden war und nun versucht
wurde, eine Datei "jts-1.10.jar" herunterzuladen, die es in der aktuellen
Version nicht mehr gibt, da wir auf "jtw-1.11.jar" umgestiegen sind.

Auch die unterschiedlichen Möglichkeiten, den Client zu starten (Desktop-Icon oder direkter Aufruf der
JNLP-Datei im Browser), machten keinen Unterschied. Erst nach einem Löschen der
Anwendung (über das Java Control Panel) konnte der Client komplett
heruntergeladen werden


Warum wird die veraltete JNLP-Datei verwendet und nicht beim Starten der Applikation überprüft, ob auf dem Server eine neue vorhanden ist?

Besten Dank für die Unterstützung und viele Grüße,
Martin
P.S.: Leider bin ich in diesem Gebiet ein Neuling, kenne mich also in den Begrifflichkeiten hier nicht so gut aus. Bei Antworten bitte darauf achten :oops: :)
 
Zuletzt bearbeitet:

hansmueller

Bekanntes Mitglied
Hallo,

dabei handelt es sich (meiner Meinung nach) um einen Bug.

Das Problem, daß man die JNLP-Datei nicht updaten kann haben viele.

In der Bugdatabase von Oracle findet man einige dieser Fehler, oft mit dem Hinweis, daß diese gefixt wurden, aber das Ganze funktioniert trotzdem nicht. Warum die das nicht richtig hinkriegen? Keine Ahnung - Muß wohl was komplizierteres sein.
(Ich habe mal irgendwo gelesen, daß dieser Fehler nur auftritt, wenn man das Programm auf offline-allowed setzt - habe das aber noch nicht getestet, den ich brauche die offline-Funktion für den Außendienst.)

Wenn es darum geht wenigstens die Jar-Dateien immer auf den aktuellen Stand zu halten, kannst du mal folgendes Probieren:
Du brauchst 2 JNLP-Dateien, eine Start-JNLP und eine Resourcen-JNLP.
In der Resourcen-JNLP sind in den Resoucen-Tags deine Jar-Dateien aufgelistet.
In der Start-JNLP verweist du in den Resoucen-Tags auf die Resourcen-JNLP (extension-Tags).

Die Start-JNLP bleibt nach dem Download unverändert im Cache (immer die alte Version), aber bei der Resourcen-JNLP wird immer geprüft, ob diese sich geändert hat. Somit kann man über die Resourcen-JNLP wenigstens seine Jar-Dateien auch umbenennen oder neue hinzufügen. Das ganze funktioniert ganz automatisch, so als hätte man die Jar-Dateien in die Start-JNLP direkt geschrieben.
So Sachen wie die Pfade, das Desktopicon oder die Infotexte kann man damit aber leider nicht ändern.

Wenn du nähere Infos diesbezüglich brauchst, kann ich dir mal ein Beispiel für die JNLPs posten. Ich beschäftige mich zur Zeit auch etwas intensiver mit diesem Thema, da ich für mein neues Programm auf die WebStart-Technik setzte und somit das gleiche Problem habe, und eine einfache Lösung dafür suche, ohne irgendwie einen eigenen Updatemechanismus schreiben zu müssen.

Die einfachste Lösung für dich wäre allerdings, die Datei "jtw-1.11.jar" einfach auf "jts-1.10.jar" umzubenennen. Wie das Teil heißt, sollte ja eigendlich egal sein. Der Inhalt ist wichtig. (Denk aber daran, daß auch die Pfade mit denen aus der "alten" JNLP übereinstimmen müssen.)

MfG
hansmueller
 

SilencerandLois

Aktives Mitglied
Hi,
eine Frage ist mir hier aber jetzt noch etwas Überlegen eingefallen:
das beschriebene Verfahren mit zwei JNLP-Dateien funktioniert sicher einwandfrei, wenn sich z.B nur die Versionierung von JAR-Dateien ändert.
Wie ist das aber, wenn eine Datei gelöscht wird, bzw. eine neue hinzukommt? Dann muss doch nach meinem Verständnis auch die Start-JNLP-Datei angepasst werden. Und dann stehe ich doch wieder vor dem selben Problem wie ursprünglich, oder?

Viele Grüße,
Martin
 

hansmueller

Bekanntes Mitglied
Hallo,

hier mal ein Beispiel:

Start-JNLP:
Code:
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://www.xxx/" href="http://www.xxx/Start.jnlp">
<information>
<title>MeinProgramm</title>
<vendor>MeineFirma</vendor>
<homepage href="http://www.xxx.de"/>
<description>MeinProgramm</description>
<description kind="short">Das macht mein Programm</description>
<icon href="http://www.xxx/Bild.png"/>
<offline-allowed/>
</information>
<update check="always" policy="always"/>
<security>
<all-permissions/>
</security>
<resources>
<java version="1.6+" href="http://java.sun.com/products/autodl/j2se"/>
<extension name="ResourcenfuerdasProgramm" href="http://www.xxx/Resourcen.jnlp"> download="eager"</extension>
</resources>
<application-desc main-class="DieMainKlassedesProgrammes"/>
</jnlp>

Resourcen-JNLP:
Code:
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://www.xxx/" href="http://www.xxx/Resourcen.jnlp">
<information>
<title>Programmresourcen</title>
<vendor>MeineFirma</vendor>
<homepage href="http://www.xxx.de"/>
<offline-allowed/>
</information>
<update check="always" policy="always"/>
<security>
<all-permissions/>
</security>
<resources>
<property name="jnlp.packEnabled" value="true"/>
<jar href="http://www.xxx/MeinProgramm.jar" download="eager" main="true"/>
<jar href="http://www.xxx/derby.jar" download="eager" main="false"/>
<jar href="http://www.xxx/IrgendeineLib.jar" download="eager" main="false"/>
<jar href="http://www.xxx/NocheineLib.jar" download="eager" main="false"/>
</resources>
<component-desc/>
</jnlp>

Wenn es eine neue Resourcen-JNLP auf dem Server gibt, dann lädt Webstart diese herunter und benutzt auch die neue.

Ich habe noch nicht alle Varianten getestet, aber ich bin mir ziemlich sicher, das man die Resourcen praktisch komplett umschreiben kann und WebStart das dann auch mitmacht.

Man muß sich das in etwa so vorstellen, als ob WebStart wiederum ein WebStart-Programm startet.
Man kann halt nur keine Änderungen mehr in der Start-JNLP vornehmen, da diese ja nicht aktualisiert wird. Die Resourcen-JNLP wird wie eine Jar-Datei behandelt. Wenn es eine aktuellere als im Cache gibt, wird diese heruntergeladen und verwendet.
(Ach ja: Das <property name="jnlp.packEnabled" value="true"/> ist notwendig, wenn man pack200 verwendet.)

Spiel ruhig mal damit etwas herum und schreibe hier deine Erfahrungen. Da kann man mit Sicherheit noch ein paar Sachen verbessern.

MfG
hansmueller
 

hansmueller

Bekanntes Mitglied
Hallo,

da gibt es noch eine wichtige Sache zu der Vorgehensweise, die ich oben beschrieben habe.

Das ganze funktioniert leider nur, wenn die Anwendung "online" gestartet wird.

Wenn man die Anwendung "offline" startet (und die Netzwerkverbindung vorher getrennt hat), kommen erst eine Menge Fehlerhinweise (irgendwelche fehlerhaften Urls). Es sind (glaube ich) genau so viele wie Einträge in der Resourcen-JNLP. Wenn man diese alle weggeklickt hat, startet anschließend das Programm (bei mir jedenfalls).
Dieses Verhalten ist leider nicht so doll.

Eine Lösung diesbezüglich habe ich leider nicht. Mir fällt auch momentan kein Ansatz für eine Lösung ein. Vielleicht hat jemand von euch eine Idee?

MfG
hansmueller
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Versionierung und automatischer FTP-Upload einer Webstart-Anwendung Tools - Maven, Gradle, Ant & mehr 3
M Webstart Webstart Sicherheitswarnungen Tools - Maven, Gradle, Ant & mehr 1
S Webstart Webstart-Anwendungen, jeweils verschiedene Cache-Pfade? Tools - Maven, Gradle, Ant & mehr 7
S Webstart Anwendung temp Ordner Tools - Maven, Gradle, Ant & mehr 2
P Linux Applet/Webstart Schriftunterschiede Tools - Maven, Gradle, Ant & mehr 3
B Webstart Java Webstart hängt sich beim Laden auf! Tools - Maven, Gradle, Ant & mehr 8
B Webstart Webstart nur offline Tools - Maven, Gradle, Ant & mehr 5
S Webstart - Wie komme ich an die Session-ID? Tools - Maven, Gradle, Ant & mehr 6
F [Java Webstart] Webspace gesucht... Tools - Maven, Gradle, Ant & mehr 6
T webstart verifizierungsproblem Tools - Maven, Gradle, Ant & mehr 13
J Webstart Grenzen von Java Webstart? Tools - Maven, Gradle, Ant & mehr 2
T Ist Webstart die richtige Wahl Tools - Maven, Gradle, Ant & mehr 2
T Webstart oder Applet Tools - Maven, Gradle, Ant & mehr 2
J Java Webstart beschleunigen und Verlauf anzeigen Tools - Maven, Gradle, Ant & mehr 3
S Webstart Problem beim Start von Webstart Tools - Maven, Gradle, Ant & mehr 4
DStrohma Webstart Webstart geht nicht da sqljdbc.jar nicht signiert werden kann Tools - Maven, Gradle, Ant & mehr 2
G Webstart Problem mit Adressierung bei Laden von Datei aus jar (Webstart) Tools - Maven, Gradle, Ant & mehr 5
D maven webstart Programm - wie? Tools - Maven, Gradle, Ant & mehr 15
S Webstart startet unter Linux, bei Windows nicht Tools - Maven, Gradle, Ant & mehr 8
S Maven Webstart Plugin Tools - Maven, Gradle, Ant & mehr 7
H WebStart-Probleme mit JRE Version 1.6.0_18 Tools - Maven, Gradle, Ant & mehr 1
D Java Webstart startet .jar file nicht Tools - Maven, Gradle, Ant & mehr 13
algorismi Webstart: neue Version der Anwendung Tools - Maven, Gradle, Ant & mehr 4
P Update-Mechanismus ohne Webstart Tools - Maven, Gradle, Ant & mehr 9
P Webstart will nicht Tools - Maven, Gradle, Ant & mehr 4
S Custom Webstart Tools - Maven, Gradle, Ant & mehr 5
S Java Webstart Tools - Maven, Gradle, Ant & mehr 3
T Webstart: Anwendung konnte nicht gestartet werden. Tools - Maven, Gradle, Ant & mehr 7
P Webstart findet Klasse nicht! Tools - Maven, Gradle, Ant & mehr 2
C Webstart Fehler (verifizierung) nach update auf 1.5 Tools - Maven, Gradle, Ant & mehr 4
D WebStart Caching kleinere Dateien aufm Client ? Tools - Maven, Gradle, Ant & mehr 7
F Probleme mit Java WebStart; Hauptklasse konnte nicht gef. Tools - Maven, Gradle, Ant & mehr 18
G Webstart + Charsets.jar Tools - Maven, Gradle, Ant & mehr 3
M WebStart Verknüpfung reinstalliert sich - Fehler in JNLP? Tools - Maven, Gradle, Ant & mehr 4
J webstart + funpic + kann nicht ausgeführt werden. Tools - Maven, Gradle, Ant & mehr 8
S Problem mit Webstart Tools - Maven, Gradle, Ant & mehr 5
doctus WebStart und Vollbild Tools - Maven, Gradle, Ant & mehr 3
zilti Unsignierte WebStart Anwendung fragt vor Aktion - Wie? Tools - Maven, Gradle, Ant & mehr 8
L Java Webstart Tools - Maven, Gradle, Ant & mehr 6
H Webstart und Authentifizierung Tools - Maven, Gradle, Ant & mehr 18
S Grundsätzliche Fragen bezüglich Webstart Tools - Maven, Gradle, Ant & mehr 5
zilti WebStart und Desktop Icon Tools - Maven, Gradle, Ant & mehr 6
X Ärger mit Webstart und Internet Explorer! Tools - Maven, Gradle, Ant & mehr 7
T Webstart unter Mac: Zugriff auf XSLT-Datei verweigert Tools - Maven, Gradle, Ant & mehr 4
M WebStart 1.6 Probleme Tools - Maven, Gradle, Ant & mehr 8
I Fehler beim Signieren der JAR Dateien für Webstart Tools - Maven, Gradle, Ant & mehr 1
G File open/save mit WebStart Tools - Maven, Gradle, Ant & mehr 3
thE_29 Woher rausfinden ob Applet/WebStart Tools - Maven, Gradle, Ant & mehr 4
D Suche ein Framework zur WebStart Programmierung Tools - Maven, Gradle, Ant & mehr 2
D caused by: java.lang.UnsatisfiedLinkError: (WEbStart JNI) Tools - Maven, Gradle, Ant & mehr 4
I Anwendung über Webstart + Libraries Tools - Maven, Gradle, Ant & mehr 8
F Webstart: java.io.FilePermission Tools - Maven, Gradle, Ant & mehr 15
G Webstart Applikation als Applet in JSP Seite? Tools - Maven, Gradle, Ant & mehr 8
F Webstart langsamer als Applet? Tools - Maven, Gradle, Ant & mehr 2
sparrow Aus Fenstern den Applet/Webstart-Hineweis entfernen Tools - Maven, Gradle, Ant & mehr 3
B webstart icon unscharf Tools - Maven, Gradle, Ant & mehr 2
0 Webstart-Probleme unter Java6 Tools - Maven, Gradle, Ant & mehr 2
E Probleme mit Java WebStart Tools - Maven, Gradle, Ant & mehr 10
J [Webstart] jnlp dynamisch erstellen Tools - Maven, Gradle, Ant & mehr 8
F Webstart & SQL Tools - Maven, Gradle, Ant & mehr 5
T Webstart auf Windows Clients Tools - Maven, Gradle, Ant & mehr 12
F Webstart = Anwendung & Applet? Tools - Maven, Gradle, Ant & mehr 7
B java3d und webstart Tools - Maven, Gradle, Ant & mehr 4
H Nutzung einer eigenen checkstyle Konfiguration in Jenkins - Grundsätzliches Tools - Maven, Gradle, Ant & mehr 2
D Maven Abhängigkeiten überprüfen auf Kompatibilität mit einer anderen Java-Version Tools - Maven, Gradle, Ant & mehr 11
VfL_Freak Icon einer JNLP-Datei ändern ?? Tools - Maven, Gradle, Ant & mehr 2
N Ant [Android] Skript zum bauen einer .pak-Datei. Tools - Maven, Gradle, Ant & mehr 1
N Webservice Einbinden einer WSDL Tools - Maven, Gradle, Ant & mehr 11
G Maven Goals in einer phase ausführen Tools - Maven, Gradle, Ant & mehr 1
S Problem bei Nutzung einer eigenen EJB in einem Servlet Tools - Maven, Gradle, Ant & mehr 2
A Auslesen einer .txt Datei auf Server mit Digest Authentifizierung Tools - Maven, Gradle, Ant & mehr 2
J JNLP und ein jar mit einer Access DB Tools - Maven, Gradle, Ant & mehr 4
G Ant in einer Batch Datei Tools - Maven, Gradle, Ant & mehr 6
P Problem beim Senden einer Datei Tools - Maven, Gradle, Ant & mehr 5
N Signiertes Applet verbindet sich nicht mit einer DB Tools - Maven, Gradle, Ant & mehr 6
J Daten von einer Webseite bearbeiten Tools - Maven, Gradle, Ant & mehr 4
A Applet aus einer Klasse starten 2 Tools - Maven, Gradle, Ant & mehr 8
A Applet aus einer Klasse starten Tools - Maven, Gradle, Ant & mehr 2
D Applet aufruf einer anderen Klasse funktioniert nicht Tools - Maven, Gradle, Ant & mehr 7
G mehrere Applets auf einer Seite Tools - Maven, Gradle, Ant & mehr 7
N Java Applet mit einer GUI erstellen Tools - Maven, Gradle, Ant & mehr 5
B Einer Grafik verschiedene Regionen zuweisen Tools - Maven, Gradle, Ant & mehr 3
R Array Werte einer JComboBox hinterlegen Tools - Maven, Gradle, Ant & mehr 2
T Mit Applet Bild von einer anderen HP darstellen Tools - Maven, Gradle, Ant & mehr 28
O Result einer Abfrage im Applet darstellen Tools - Maven, Gradle, Ant & mehr 11
Paule Aufruf einer neuen Klasse durch Button-Klick Tools - Maven, Gradle, Ant & mehr 11
F Erstellen einer Policy-Datei Tools - Maven, Gradle, Ant & mehr 8
S Ausgabe einer Methode schreibt in HTML Datei Tools - Maven, Gradle, Ant & mehr 8
K Applet mit einer Sinuskurven berechnung Tools - Maven, Gradle, Ant & mehr 2
G öffnen einer neuen seite mit word text Tools - Maven, Gradle, Ant & mehr 3
T Java Applikation an Clients verteilen Tools - Maven, Gradle, Ant & mehr 5
T Applikation mit VM verpacken? Tools - Maven, Gradle, Ant & mehr 10
S Java Applikation als Windows Service einrichten Tools - Maven, Gradle, Ant & mehr 23
P Java Applikation auf Server Tools - Maven, Gradle, Ant & mehr 7
F bestehende Applikation auch als Applet lauffähig zu machen Tools - Maven, Gradle, Ant & mehr 9
F Applikation (nicht Applet) im Browser starten Tools - Maven, Gradle, Ant & mehr 9
G JApplet parallel zu Java-Applikation entwickeln Tools - Maven, Gradle, Ant & mehr 11
M Brauche Unterstützung bei Chat Applikation Tools - Maven, Gradle, Ant & mehr 1
J Ausführung verhindern Applikation entführt wurde möglich ? Tools - Maven, Gradle, Ant & mehr 3
J Code rennt als Applikation aber nicht als Applet? Tools - Maven, Gradle, Ant & mehr 3

Ähnliche Java Themen

Neue Themen


Oben