Webstart Verschiedene jre-Releases auf dem Client

Sturmwind

Mitglied
Hallo zusammen.

Nun hätte ich eine neue Frage zum Thema Webstart und jre-Releases.

Wir wollen zukünftig über Webstart eine Applikation verteilen, die zwingend das jre-Release 1.6u18 erfordert. Standardmäßig ist auf unseren Rechnern das jre-Release 1.6u16 installiert, welches für andere installierte Applikationen zwingend notwendig ist.

Kann man zwei Releases einer Version (1.6) nebeneinander installieren oder wird immer automatisch das alte Release mit dem neuen überschrieben?


Mit freundlichen Grüßen
Sturmwind
 
T

Tomate_Salat

Gast
Du kannst durchaus mehrere JRE's auf dem Rechner installiert haben. Allerdings kannst du nur eine als Standart wählen. Du kannst aber z.B. über eine .bat das regeln, dass er eine bestimmte nehmen soll.

Erklärung findest du hier: 6 Varianten Java Programme zu starten (schau dir mal Variante 6 davon an)
 

hansmueller

Bekanntes Mitglied
Hallo,

über die JNLP-Datei kannst du festlegen, welche JRE-Version verwendet werden soll.
Wenn diese auf dem Client nicht vorhanden ist, wird diese automatisch von WebStart nachgeladen. (Unter Windows sollte das zumindest funktionieren.) Somit braucht man sich eigendlich nicht darum kümmern, welche Version der Client momentan hat.

MfG
hansmueller
 

Sturmwind

Mitglied
Hallo zusammen.

Danke erstmal für die Antworten.

Ich muss mir die Dinge nun erst einmal durch den Kopf gehen lassen...

Eine Anmerkung... es ist mir untersagt worden, dass Webstart eine jre-Version einfach nachzieht, wenn diese aus dem Internet installiert werden muss. Wenn ich das richtig verstehe, prüft Webstart, ob die entsprechende jre-Version vorhanden ist, ist dies nicht der Fall, dann wird doch die jre-Version von der Homepage von sun runtergeladen und installiert, richtig?


Grüße
Sturmwind
 

hansmueller

Bekanntes Mitglied
Hallo,

hier ein interessanter Link:
Java Web Start - Frequently Asked Questions (FAQ)

<j2se version="1.3.1*" href="http://java.sun.com/products/autodl/j2se"/>

Damit die entsprechende Version heruntergeladen werden kann, muß man mit "href" einen Pfad mit angeben, wo das entsprechende Teil zu finden ist.

Du könntest jetzt einen eigenen Update-Ordner auf euren Server erstellen und den Pfad zu diesem Ordner in der JNLP-Datei angeben, aber... ich habe keine Ahnung was alles in diesen Ordner rein muß.
(Kann sein, daß man nur die Installationsdatei für die entsprechende Version hineinlegen muß. Für Windows ist das glaube ich eine msi-Datei. Aber wie gesagt, zu diesem Thema fehlt mir das Wissen.)

Es ist wahrscheinlich einfacher, auf allen Clients die benötigte Version selber und nicht von WebStart installieren zu lassen.

Wenn du sichergehen willst, daß WebStart nichts von Oracel herunterlädt, würde ich die "href" einfach herauslöschen, dann weiß WebStart nicht, woher es die benötigte Version bei Bedarf nachladen soll.

MfG
hansmueller
 

Sturmwind

Mitglied
Hmmm... ok, neues Problem...

Ich habe Tag den Tag für das notwendige Release so aufgebaut...

<j2se version="1.6.0.18" max-heap-size="256m" />

Soo... nun soll er also, der Theorie nach, das Release 1.6.0_18 nutzen... wenn ich aber eine jre-Version so detailliert erwähne, muss man doch laut Sun-Dokumentation einen href-Pfad mit angeben... das will ich aber ja eigentlich gar nicht, da ich ja die jre-Version bereits auf dem Client installiert habe... mache ich die href-Angabe allerdings nicht, kann ich die Anwendung so aber nicht starten. :(
 

hansmueller

Bekanntes Mitglied
Hallo,

müßte es nicht
Java:
<j2se version="1.6.0_18" max-heap-size="256m" />
heißen?
Kein Punkt, sondern ein Unterstrich vor der 18.
Ist das "max-heap-size" bei dir wirklich notwendig, oder hast du es nur aus dem JNLP-Beispiel von Oracle übernommen?

MfG
hansmueller
 

Sturmwind

Mitglied
Hallo.

Klar, so schnell kommt ein Fehler beim Abschreiben zustande. Entschuldigung!

Java:
<j2se version="1.6.0_18" max-heap-size="256m" />

Die Angabe des max-heap-size-Parameters kommt von der Anwendung her, die wir per Webstart aufrufen wollen. Das wurde also vom Hersteller soweit vorgegeben... Meiner Meinung nach kann man dies aber sicherlich auch weg lassen.
 

Sturmwind

Mitglied
Hallo.

Nein, das Problem besteht nachwievor.

Wenn ich das Release explizit angebe, will er einen Pfad zum Herunterladen haben, den ich ihm aber nicht nennen kann, da er die Installation auf dem Client nutzen soll.

Hier einmal die Fehlermeldung, die ausgegeben wird...

[XML]<?xml version="1.0" encoding="utf-8"?><jnlp codebase="http://javadl.sun.com/webapps/jawsautodl/AutoDL/j2se">
<information> <title>J2RE 1.6.0_18 Installer</title><vendor>Sun Microsystems, Inc.</vendor></information>
<security><all-permissions/></security><resources><j2se version="1.3+"href="http://java.sun.com/products/autodl/j2se"/>
<jar href="javaws-j2re-inst-w.jar" download="lazy" size="70700"/><property name="installerLocation" value="jre-6u18-windows-i586-iftw.exe"/> <property name="installerSize" value="553760"/> <property name="javaVersion" value="1.6.0_18"/> <property name="platformVersion" value="1.6"/> <property name="msvcrt.versionMS" value="60000"/> <property name="msvcrt.versionLS" value="20910000"/> <property name="osplatform" value="windows-i586"/> </resources> <installer-desc main-class="com.sun.webstart.installers.Main"/></jnlp>[/XML]

Java:
<?xml version="1.0" encoding="utf-8"?> 
<!-- JNLP File for ADITO online Client--> 
<jnlp 
  spec="1.0+" 
  codebase="http://swnsrd025/webstart/webstart/client/" 
  href="client.jnlp"> 
  <information> 
    <title>ADITO online Client</title> 
    <vendor>ADITO Software GmbH</vendor>     
    <description>ADITO online Client</description>    
    <icon href="adito32.png"/>
    <icon href="adito.ico" kind="shortcut"/> 
    <icon href="splash.jpg" kind="splash"/> 
    <offline-allowed/>
    <shortcut> 
      <desktop/> 
      <menu submenu="ADITO online"/> 
    </shortcut>	
  </information> 
  <security> 
      <all-permissions/> 
  </security> 
  <resources> 
    <j2se version="1.6.0_18" />
    <jar href="../../lib/client/client.jar"/>     
    <jar href="../../lib/client/images.jar"/>    
    <jar href="../../lib/client/cc-viewer.jar"/> 
    <jar href="../../lib/client/jfreechartcc.jar"/> 
    <jar href="../../lib/client/jdom.jar"/> 
    <jar href="../../lib/client/javadatepicker.jar"/> 
    <jar href="../../lib/client/javadatepicker-i18n.jar"/> 
    <jar href="../../lib/client/ical4j.jar"/> 
    <jar href="../../lib/client/log4j.jar"/> 
    <jar href="../../lib/client/commons-io.jar"/> 
    <jar href="../../lib/client/jcommon.jar"/> 
    <jar href="../../lib/client/jfreechart.jar"/>
    <jar href="../../lib/client/concurrent.jar"/>  
    <jar href="../../lib/client/joda-time.jar"/> 
    <jar href="../../lib/client/flamingo.jar"/> 
    <jar href="../../lib/client/synthetica.jar"/> 
    <jar href="../../lib/client/syntheticaaddons.jar"/> 
    <jar href="../../lib/client/aditolook.jar"/> 
    <jar href="../../lib/client/swingx.jar"/> 
    <jar href="../../lib/client/jxlayer.jar"/>
    <jar href="../../lib/client/jywidgets.jar"/>  
    <jar href="../../lib/client/djnativeswing.jar"/>
    <jar href="../../lib/client/djnativeswing-swt.jar"/>	
    <jar href="../../lib/client/jtapi/gjtapi.jar"/> 
    <jar href="../../lib/client/jtapi/jcat.jar"/> 
    <jar href="../../lib/client/jtapi/jcc.jar"/> 
    <jar href="../../lib/client/jtapi/jtapi.jar"/> 
    <jar href="../../lib/client/jtapi/asterisk-java.jar"/> 
    <jar href="../../lib/client/win32/mstapisp.jar"/>     
    <jar href="../../plugin/runscript.jar"/>
    <property name="sun.java2d.noddraw" value="true"/>
    <extension name="dlink" href="../../webstart/client/dlink_for_Adito.jnlp"/>
    <extension name="dlink" href="../../webstart/client/d3-l1-api.jnlp"/>
  </resources> 
  <resources os="Windows" arch="x86">
    <jar href="../../lib/client/swt.jar"/>
  </resources>
  <resources os="Windows" arch="amd64">
    <jar href="../../lib/client/swt_64.jar"/>
  </resources>
  <resources os="Windows">    
    <nativelib href="../../lib/client/win32/mstapisp-native.jar"/>     
    <nativelib href="../../plugin/runscript-native.jar"/> 
  </resources>
  <application-desc main-class="de.adito.aditoweb.client.Client">
    <argument>swnsrd025</argument>
    <argument>7779</argument>  
    <argument>0</argument>
    <argument>false</argument>
    <argument>$USERHOME/.adito/client.xml</argument>
  </application-desc> 
</jnlp>

Java:
JNLPException[category: Startdateifehler : Exception: null : LaunchDesc: 
<jnlp spec="1.0+" codebase="http://javadl.sun.com/webapps/jawsautodl/AutoDL/j2se/">
  <information>
    <title>J2RE 1.6.0_18 Installer</title>
    <vendor>Sun Microsystems, Inc.</vendor>
    <homepage href="null"/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <update check="timeout" policy="always"/>
  <resources>
    <java href="http://java.sun.com/products/autodl/j2se" version="1.3+"/>
    <jar href="http://javadl.sun.com/webapps/jawsautodl/AutoDL/j2se/javaws-j2re-inst-w.jar" download="eager" main="false"/>
    <property name="installerLocation" value="jre-6u18-windows-i586-iftw.exe"/>
    <property name="installerSize" value="553760"/>
    <property name="javaVersion" value="1.6.0_18"/>
    <property name="platformVersion" value="1.6"/>
    <property name="msvcrt.versionMS" value="60000"/>
    <property name="msvcrt.versionLS" value="20910000"/>
    <property name="osplatform" value="windows-i586"/>
  </resources>
  <installer-desc main-class="com.sun.webstart.installers.Main"/>
</jnlp> ]
	at com.sun.javaws.JnlpxArgs.executeInstallers(Unknown Source)
	at com.sun.javaws.Launcher.prepareResources(Unknown Source)
	at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
	at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
	at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
	at com.sun.javaws.Launcher.launch(Unknown Source)
	at com.sun.javaws.Main.launchApp(Unknown Source)
	at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
	at com.sun.javaws.Main$1.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
 
Zuletzt bearbeitet:

hansmueller

Bekanntes Mitglied
Tut mir leid, jetzt bin ich mit meinem Latein auch am Ende.:bahnhof:
Es scheint so, das WebStart mit aller Gewalt diese "javaws-j2re-inst-w.jar" ausführen will, die für das Update verantwortlich ist. Das finde ich ganz schön merkwürdig, das WebStart anscheinend einfach per Internet auf den Sun-Server zugreift, obwohl man das gar nicht erlaubt hat.???:L

Schau dir mal den Vorschlag von Tomate_Salat mit der Batch-Datei an.

Eine Idee:
Du müßtest dein Programm an einem fest definierten Platz auf den Clientrechner installieren.
Dann schreibst du ein Start-Programm (als WebStart-Programm), das den Befehl der Batch-Datei ausführt und sich danach selber beendet. Da es keine WebStartUpdate-Automatik für dein Programm mehr gibt, könnte du das Start-Programm, welches die Batchdatei ausführt, vorher überprüfen lassen, ob alle Daten (von deinem Programm) auf den neuesten Stand sind. Du könntest es sogar so machen, daß das Startprogramm dein Programm auf den Clientrechner installiert.
Ist zwar etwas umständlich und plattformabhängig - könnte aber funktionieren.

Aber vielleicht weiß noch jemand anderes hier im Forum Rat.

MfG
hansmueller
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Webstart Webstart-Anwendungen, jeweils verschiedene Cache-Pfade? Tools - Maven, Gradle, Ant & mehr 7
C Maven Classpath auf verschiedene Ordner setzen Tools - Maven, Gradle, Ant & mehr 8
A Hudson/Buckminster: Verschiedene Fragen Tools - Maven, Gradle, Ant & mehr 12
D [Maven] mehrere Abhängigkeiten benutzen gleichbenannte aber verschiedene Resource Tools - Maven, Gradle, Ant & mehr 3
D verschiedene Versionen "builden" für Test und Lifebetrieb Tools - Maven, Gradle, Ant & mehr 14
B Einer Grafik verschiedene Regionen zuweisen Tools - Maven, Gradle, Ant & mehr 3
V bilder auf verschiedene ebenen verteilen Tools - Maven, Gradle, Ant & mehr 2
ruutaiokwu GIT/SourceTree Client: Es wurden keine Änderungen an dieser Datei erkannt, oder es handelt sich um eine Binärdatei (?) Tools - Maven, Gradle, Ant & mehr 5
D WebStart Caching kleinere Dateien aufm Client ? Tools - Maven, Gradle, Ant & mehr 7
E Download Client Tools - Maven, Gradle, Ant & mehr 2
B fertigen client-server-chat online stellen Tools - Maven, Gradle, Ant & mehr 4
L Datei vom Client auf Server hochladen Tools - Maven, Gradle, Ant & mehr 4
L Dateizugriff von Client auf Server über Applet Tools - Maven, Gradle, Ant & mehr 7
L Applikation Verarb (Server) - Applet als Darstell (Client) Tools - Maven, Gradle, Ant & mehr 5
W Kennt jemand ein Java FTP Client. Tools - Maven, Gradle, Ant & mehr 7

Ähnliche Java Themen

Neue Themen


Oben