# JNLP Aplication startet nicht



## Thomas15156 (6. Jul 2010)

Hallo,
ich will ein Java Programm über eine öffentliche Website starten. Dazu klicke ich es an, jedoch will mein Browser dann eine jnlp Datei runter laden, statt sie auszuführen. Das passiert beim IE8 und neusten Firefox. Neustes Java ist installiert. Weiß einer was das ist?

Hier der Link:
Handelskammer Hamburg - Berufsausbildungsvertrag Online

Man muss auf das Bild mit der Hand, die einen Stift hält klicken.


----------



## L-ectron-X (6. Jul 2010)

Das geht schon in Ordnung so.
Lade dir die Datei herunter und starte sie lokal per Doppelklick.


----------



## DStrohma (6. Jul 2010)

Oder mach einfach nicht "Speichern unter..." sondern "Öffnen".


----------



## Thomas15156 (6. Jul 2010)

Das habe ich auch schon gemaht. Wenn ich die Datei direkt öffne oder erst speichere und dann öffne, kommt wieder der Datei herunterladen Dialog und ich öffne wieder und wieder und wieder.


----------



## DStrohma (6. Jul 2010)

Vielleicht stimmt was mit dem Inhalt deiner JNLP file nicht:

Vergleich das mal:

[xml]<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="http://127.0.0.1">
<information>
  <title>ALM Tool</title>
  <vendor>DGS-EC/EAM</vendor>
  <homepage href="http://www.bosch.com" />
  <description>Bosch ALM Tool</description>
</information>
<security>
   <all-permissions/>
</security>
<resources>
  <j2se version="1.2+" />
  <jar href="/ALM.jar"/>
  <jar href="/ALM_lib/DGS_Calibration_Tools_Java_Framework.jar"/>
  <jar href="/ALM_lib/jide-oss-2.9.3.jar"/>
  <jar href="/ALM_lib/sqljdbc.jar"/>
</resources>
<application-desc main-class="alm.ALM" />
</jnlp>[/xml]

Vielleicht verweist du irgendwo in der JNLP file auf die JNLP file...
Ich hoffe das verwirrt dich nicht noch mehr


----------



## Thomas15156 (7. Jul 2010)

Die jnlp Datei ist nicht von mir. Ich verstehe von Java leider nichts. 

In der Datei ist nur ein Link zu sich selber im "HEAD", wenn ich diesen weg lösche lande ich trotzdem in der Schleife, also kein Unterschied.
Hier mal die Datei:
[xml]<?xml version="1.0" encoding="utf-8"?>
<!-- Application BABV Online -->
<jnlp spec="1.0+" codebase="http://signatur.ihk.de/SignaturV4"
  href="http://signatur.ihk.de/SignaturV4/webstart_babv_v4_berecht.jnlp">
  <!-- !! always use absolute path in href !! -->

  <information>
    <title>BABV Online</title>
    <vendor>ComNetMedia AG, Dortmund, Germany</vendor>
    <homepage href="http://signatur.ihk.de/SignaturV4/index.html"/>
    <description>Antragswesen der Industrie- und Handelskammern: Antrag zur Eintragung eines Berufsausbildungsvertrages</description>
    <description kind="short">BABV  Online</description>
    <icon href="http://signatur.ihk.de/SignaturV4/grafiken/ComNetMedia.gif"/>
  </information>

  <security>
      <all-permissions/>
  </security>

  <resources>
    <j2se version="1.4+" initial-heap-size="64m" max-heap-size="256m"/>
    <jar href="http://signatur.ihk.de/SignaturV4/SignaturV4.jar"/>
    <jar href="http://signatur.ihk.de/SignaturV4/SigLib.jar"/>
    <jar href="http://signatur.ihk.de/SignaturV4/CNMProvider.jar"/>
    <jar href="http://signatur.ihk.de/SignaturV4/commons-logging.jar"/>
    <jar href="http://signatur.ihk.de/SignaturV4/log4j-1.2.9.jar"/>
    <jar href="http://signatur.ihk.de/SignaturV4/jcalendar-1.3.3.jar"/>
  </resources>

  <application-desc main-class="com.cnm.client.gui.allg.SigApplet">
    <argument>http://signatur.ihk.de/SignaturV4</argument>
    <argument>BABV</argument>
    <argument>BERECHT</argument>
  </application-desc>

  <icon href="http://signatur.ihk.de/SignaturV4/grafiken/Signature.jpg" kind="splash"/>

</jnlp>[/xml]


----------



## hansmueller (7. Jul 2010)

Hallo,
also bei mir klappt das Ausführen wunderbar.(Firefox 3.6.6, Windoof XP)

Ich habe auf das Bild geklickt, den Dialog "Öffnen mit: Java(TM) Web Start Launcher (Standard)" bestätigt, die Signaturwarnung ebenfalls bestätigt und schon hatte ich die Anmeldemaske auf dem Bildschrim. (Zugegeben, da wird eine Menge heruntergeladen.)

Eine Schleife... vielleicht hat der Browser eine Macke?

MfG
hansmueller


----------



## Thomas15156 (7. Jul 2010)

Aha, ich muss es also mit dem "Java(TM) Web Start Launcher (Standard)" öffnen und nicht mit dem Internet explorer!!! Aber dies fehlt mir in der Liste. Welche Datei im Java Ordner ist das, die ich mit dem Tool verknüpfen muss?


----------



## VfL_Freak (7. Jul 2010)

Moin,

hinter WebStart verbirgt sich die Datei javaws.exe, die eigentlich beim Installieren der JRE automatisch installiert worden sein sollte !

Du findest sie entweder im bin-Verzeichnis Deiner Java-Installation, aber auch in C:\WINDOWS\system32 !

Installiere ggf. mal eine (aktuelle) JRE-Version!

Gruß
Klaus


----------



## hansmueller (7. Jul 2010)

Das sollte eigendlich so Ablaufen:
Der Browser lädt die jnlp-Datei herunter und führt diese dann gleich mit javaws.exe aus.
Normalerweise sollte dein Browser bereits wissen, mit welchem Programm er die jnlp-Dateien ausführen soll.

Sollte er es nicht wissen, ist die einfachste Lösung, Java zu deinstallieren und dann nochmal zu installieren. Dann sollten alle Verknüpfungen eigendlich richtig gesetzt werden.
Alternativ kannst du in den Browsereinstellungen auch irgendwo angeben, mit welchem Programm er bestimmte Dateien ausführen soll.

MfG
hansmueller


----------



## Thomas15156 (8. Jul 2010)

Super jetzt funktioniert es. HAbe die JNLP Dateien einfach mit javaws.exe verknüpft. Aber ich werde es die Tage mal neu installieren, damit alles sauber installiert wird.

Vielen Dank euch allen.


----------



## Java-Freak (8. Jul 2010)

ich habs mal als linux benutzer versucht und bei mir gehts nicht...
das ist die fehlermeldung die mir das programm ausgibt 

```
com.cnm.context.DigSigException: Wrapper konnten nicht geladen werden
	at com.cnm.client.gui.allg.SigApplet.init(SigApplet.java:545)
	at com.cnm.client.gui.allg.SigApplet.main(SigApplet.java:3289)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.sun.javaws.Launcher.executeApplication(Launcher.java:1749)
	at com.sun.javaws.Launcher.executeMainClass(Launcher.java:1695)
	at com.sun.javaws.Launcher.doLaunchApp(Launcher.java:1477)
	at com.sun.javaws.Launcher.run(Launcher.java:129)
	at java.lang.Thread.run(Thread.java:619)
```
und das gibt die konsole aus
	
	
	
	





```
Server Url: http://signatur.ihk.de/SignaturV4
Provider CNMProvider installed at position 9
19:00:16,758 INFO  LibLog.log           Load JOslibwrV4.dll from system directory...failed 
  com.cnm.library.lang.Loader.loadLibrary(Loader.java:134)
19:00:16,808 INFO  LibLog.log           Trying to write JOslibwrV4.dll from JAR to temp directory...failed 
  com.cnm.library.lang.Loader.loadLibrary(Loader.java:170)
jnlpx.remove=false
file.encoding.pkg=sun.io
java.home=/usr/java/jdk1.6.0_19/jre
deployment.security.askgrantdialog.notinca=true
deployment.repository.askdownloaddialog.show=true
deployment.system.security.trusted.jssecerts=/usr/java/jdk1.6.0_19/jre/lib/security/trusted.jssecerts
deployment.console.startup.mode=SHOW
java.endorsed.dirs=/usr/java/jdk1.6.0_19/jre/lib/endorsed
deployment.security.sandbox.jnlp.enhanced=true
deployment.system.security.blacklist=/usr/java/jdk1.6.0_19/jre/lib/security/blacklist
deployment.javaws.concurrentDownloads=4
deployment.security.sandbox.awtwarningwindow=true
sun.os.patch.level=unknown
java.vendor.url=http://java.sun.com/
deployment.security.blacklist.check=true
deployment.user.security.trusted.jssecacerts=/home/jonas/.java/deployment/security/trusted.jssecacerts
deployment.javaws.home.jnlp.url=http://java.sun.com/products/javawebstart
java.version=1.6.0_19
deployment.javapi.trace.filename=
deployment.max.output.file.size=10
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
deployment.user.security.trusted.cacerts=/home/jonas/.java/deployment/security/trusted.cacerts
java.protocol.handler.pkgs=com.sun.javaws.net.protocol|com.sun.deploy.net.protocol
javaplugin.proxy.config.type=direct
deployment.user.tmp=/home/jonas/.java/deployment/tmp
user.name=jonas
deployment.user.logdir=/home/jonas/.java/deployment/log
sun.io.unicode.encoding=UnicodeLittle
deployment.browser.path=/usr/bin/firefox
deployment.cache.max.size=-1
sun.jnu.encoding=UTF-8
java.runtime.name=Java(TM) SE Runtime Environment
jnlpx.home=/usr/java/jdk1.6.0_19/jre/bin
deployment.system.security.trusted.publishers=/usr/java/jdk1.6.0_19/jre/lib/security/trusted.publishers
java.specification.name=Java Platform API Specification
deployment.security.mixcode=ENABLE
user.timezone=Europe/Berlin
deployment.security.SSLv3=true
deployment.proxy.override.hosts=
path.separator=:
deployment.javaws.installURL=http://java.sun.com/products/autodl/j2se
deployment.javaws.ssv.enabled=true
jnlpx.heapsize=64m,256m
file.encoding=UTF-8
deployment.user.security.trusted.publishers=/home/jonas/.java/deployment/security/trusted.publishers
deployment.javapi.log.filename=
deployment.user.cachedir=/home/jonas/.java/deployment/cache
deployment.browser.args=-remote openURL(%u,new-window)
deployment.javaws.cache.update=false
deployment.security.validation.crl=false
java.io.tmpdir=/tmp
deployment.version=6.0
sun.awt.warmup=true
user.language=en
line.separator=

deployment.user.security.policy=file:///home/jonas/.java/deployment/security/java.policy
jnlpx.jvm=/usr/java/jdk1.6.0_19/jre/bin/java
java.vm.info=mixed mode, sharing
java.vm.specification.name=Java Virtual Machine Specification
deployment.max.output.files=5
deployment.update.mime.types=true
deployment.security.browser.keystore.use=true
deployment.security.jsse.hostmismatch.warning=true
deployment.system.security.cacerts=/usr/java/jdk1.6.0_19/jre/lib/security/cacerts
deployment.proxy.type=3
deployment.user.security.trusted.jssecerts=/home/jonas/.java/deployment/security/trusted.jssecerts
deployment.security.password.cache=true
deployment.javaws.shortcut=ASK_IF_HINTED
java.awt.printerjob=sun.print.PSPrinterJob
deployment.security.https.warning.show=false
deployment.javaws.autodownload=ALWAYS
deployment.proxy.bypass.local=false
http.auth.serializeRequests=true
deployment.javaws.logFileName=
os.name=Linux
java.specification.vendor=Sun Microsystems Inc.
deployment.javaws.uninstall.shortcut=false
deployment.system.security.jssecacerts=/usr/java/jdk1.6.0_19/jre/lib/security/jssecacerts
deployment.system.security.oldcacerts=/usr/java/jdk1.6.0_19/jre/lib/security/cacerts
java.vm.name=Java HotSpot(TM) Client VM
java.quick.starter=false
deployment.security.askgrantdialog.show=true
java.library.path=/usr/java/jdk1.6.0_19/jre/lib/i386/client:/usr/java/jdk1.6.0_19/jre/lib/i386:/usr/java/jdk1.6.0_19/lib/i386:/usr/lib/firefox-3.5.9:/usr/lib/firefox-3.5.9/plugins:/usr/lib/firefox-3.5.9:/usr/java/packages/lib/i386:/lib:/usr/lib
java.class.version=50.0
deployment.control.panel.log=false
deployment.system.security.trusted.clientauthcerts=/usr/java/jdk1.6.0_19/jre/lib/security/trusted.clientcerts
deployment.trace=false
deployment.security.clientauth.keystore.auto=true
deployment.security.validation.ocsp=false
deployment.javapi.cache.update=false
deployment.cache.jarcompression=0
deployment.system.security.trusted.libraries=/usr/java/jdk1.6.0_19/jre/lib/security/trusted.libraries
deployment.security.validation.ocsp.publisher=false
deployment.javaws.update.timeout=1500
sun.boot.library.path=/usr/java/jdk1.6.0_19/jre/lib/i386
sun.management.compiler=HotSpot Client Compiler
java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
deployment.user.extdir=/home/jonas/.java/deployment/ext
deployment.system.security.trusted.certs=/usr/java/jdk1.6.0_19/jre/lib/security/trusted.certs
deployment.system.security.oldjssecacerts=/usr/java/jdk1.6.0_19/jre/lib/security/jssecacerts
deployment.proxy.same=false
deployment.security.authenticator=true
deployment.javaws.traceFileName=
deployment.user.security.trusted.clientauthcerts=/home/jonas/.java/deployment/security/trusted.clientcerts
java.vm.specification.version=1.0
deployment.user.security.blacklist=/home/jonas/.java/deployment/security/blacklist
sun.cpu.isalist=
java.ext.dirs=/usr/java/jdk1.6.0_19/jre/lib/ext:/usr/java/packages/lib/ext
os.version=2.6.30.9-102.fc11.i586
user.home=/home/jonas
deployment.user.security.trusted.certs=/home/jonas/.java/deployment/security/trusted.certs
trustProxy=true
java.vm.vendor=Sun Microsystems Inc.
deployment.javapi.lifecycle.exception=false
user.dir=/home/jonas/Documents
deployment.cache.enabled=true
sun.cpu.endian=little
jnlpx.splashport=36707
deployment.security.notinca.warning=true
deployment.javaws.splash.index=/home/jonas/.java/deployment/cache/6.0/splash/splash.xml
java.vm.version=16.2-b04
deployment.security.trusted.policy=
java.class.path=/usr/java/jdk1.6.0_19/jre/lib/deploy.jar
os.arch=i386
deployment.javapi.stop.timeout=200
deployment.mime.types.use.default=true
deployment.security.pretrust.list=true
java.rmi.server.RMIClassLoaderSpi=com.sun.jnlp.JNLPRMIClassLoaderSpi
deployment.capture.mime.types=false
jnlpx.origFilenameArg=/tmp/webstart_babv_v4_berecht-1.jnlp
javawebstart.version=javaws-1.6.0_19
deployment.security.TLSv1=true
sun.java.launcher=SUN_STANDARD
deployment.jpi.mode.new=false
deployment.javaws.muffin.max=256
deployment.log=false
https.protocols=TLSv1,SSLv3
java.vm.specification.vendor=Sun Microsystems Inc.
file.separator=/
java.runtime.version=1.6.0_19-b04
sun.boot.class.path=/usr/java/jdk1.6.0_19/jre/lib/resources.jar:/usr/java/jdk1.6.0_19/jre/lib/rt.jar:/usr/java/jdk1.6.0_19/jre/lib/sunrsasign.jar:/usr/java/jdk1.6.0_19/jre/lib/jsse.jar:/usr/java/jdk1.6.0_19/jre/lib/jce.jar:/usr/java/jdk1.6.0_19/jre/lib/charsets.jar:/usr/java/jdk1.6.0_19/jre/classes:/usr/java/jdk1.6.0_19/jre/lib/javaws.jar:/usr/java/jdk1.6.0_19/jre/lib/deploy.jar:/usr/java/jdk1.6.0_19/jre/lib/plugin.jar
java.security.policy=file:/usr/java/jdk1.6.0_19/jre/lib/security/javaws.policy
deployment.user.security.trusted.libraries=/home/jonas/.java/deployment/security/trusted.libraries
user.country=US
deployment.security.expired.warning=true
deployment.repository.enabled=true
deployment.security.SSLv2Hello=false
deployment.javapi.runtime.type=0
deployment.javaws.associations=ASK_USER
java.vendor=Sun Microsystems Inc.
java.specification.version=1.6
deployment.user.security.saved.credentials=/home/jonas/.java/deployment/security/auth.dat
sun.arch.data.model=32
19:00:18,939 INFO  LibLog.log           Load JOslibwrV4.dll from system directory...failed 
  com.cnm.library.lang.Loader.loadLibrary(Loader.java:134)
19:00:19,008 INFO  LibLog.log           Trying to write JOslibwrV4.dll from JAR to temp directory...failed 
  com.cnm.library.lang.Loader.loadLibrary(Loader.java:170)
```


----------



## hansmueller (9. Jul 2010)

Hallo Java-Freak,

wenn ich die Fehlermeldung richtig interpretiere, dann wird eine sogenannte "JOslibwrV4.dll" nicht geladen. Ich dachte immer dll-Dateien sind nur im MSWindows-Bereich anzutreffen.
Vielleicht ist dieses WebStart-Programm nur für MSWindows gedacht. (Dann wären die Entwickler aber ganz schön dämlich. Kann ich mir eigendlich nicht vorstellen.)
Oder es ist ein Problem mit den Zugriffsrechten. (Kann ich mir eigendlich noch weniger vorstellen.)

MfG
hansmueller


----------



## Java-Freak (9. Jul 2010)

mit den zugriffsrechten gaube ich nicht, da mich WebStart gefragt hat und ich es autorisiert habe...webstart fragt immer automatisch wenn es daten lesen oder schreiben will...
es währe von den entwicklern in der tat dämlich sämtliche linux user auszuschließen...
ich will mich da ja nicht anmelden sondern nur nen fehler melden


----------



## Iron Monkey (11. Jan 2011)

Mist, ein Beitrag zuviel!


----------



## Iron Monkey (11. Jan 2011)

Java-Freak hat gesagt.:


> mit den zugriffsrechten gaube ich nicht, da mich WebStart gefragt hat und ich es autorisiert habe...webstart fragt immer automatisch wenn es daten lesen oder schreiben will...
> es währe von den entwicklern in der tat dämlich sämtliche linux user auszuschließen...
> ich will mich da ja nicht anmelden sondern nur nen fehler melden





> Hallo Java-Freak,
> 
> wenn ich die Fehlermeldung richtig interpretiere, dann wird eine sogenannte "JOslibwrV4.dll" nicht geladen. Ich dachte immer dll-Dateien sind nur im MSWindows-Bereich anzutreffen.
> Vielleicht ist dieses WebStart-Programm nur für MSWindows gedacht. (Dann wären die Entwickler aber ganz schön dämlich. Kann ich mir eigendlich nicht vorstellen.)
> ...



Nein, das stimmt nicht, dass die Entwickler dämlich sind! 

In der JNLP-Datei unter Ressource kann man das Parameter für jedes Betriebssystem verfeinern.
Schau mal:


```
...
    <resources os="Windows" arch="x86">
        <jar href="plugins/org.eclipse.swt.win32.win32.x86_3.4.1.v3449c.jar"/>
    </resources>
    <resources os="Windows" arch="x86_64">
        <jar href="plugins/org.eclipse.swt.win32.win32.x86_64_3.4.1.v3449c.jar"/>
    </resources>
    <resources os="Windows" arch="ia64">
        <jar href="plugins/org.eclipse.swt.win32.win32.ia64_0.0.0.jar"/>
    </resources>
    <resources os="Linux" arch="x86">
        <jar href="plugins/org.eclipse.swt.gtk.linux.x86_3.4.1.v3449c.jar"/>
    </resources>
    <resources os="Linux" arch="s390">
        <jar href="plugins/org.eclipse.swt.gtk.linux.s390_0.0.0.jar"/>
    </resources>
    <resources os="Linux" arch="s390x">
        <jar href="plugins/org.eclipse.swt.gtk.linux.s390x_0.0.0.jar"/>
    </resources>
...
```

Gruß
Iron Monkey


----------



## PLUZ (12. Jan 2011)

Iron Monkey hat gesagt.:


> Nein, das stimmt nicht, dass die Entwickler dämlich sind!



Vielen Dank, wir bemühen uns   Immerhin kommt die Anwendung mit derzeit vier verschiedenen Java Versionen von 1.4.2 bis 1.7 klaglos zurecht, was gerade im Umfeld von Swing GUIs eine gewisse Herausforderung ist.



			
				hansmueller hat gesagt.:
			
		

> Vielleicht ist dieses WebStart-Programm nur für MSWindows gedacht.



Das ist in der Tat der Fall und liegt nicht daran, dass wir Linux nicht mögen, sondern dass die Anwendung auch mit Signaturkarten arbeiten kann, zu denen es nur unter Windows Treiber gibt. Das sind genau die beobachteten DLLs. Die Systemvoraussetzungen der Anwendung finden sich übrigens unter Berufsausbildungsvertrag Online Portal (vielleicht nicht ganz offensichtlich über den Menüpunkt "Installation" zu erreichen). Vielleicht können wir die Treiber in einer künftigen Version optional einbinden, so dass die Anwendung ohne Kartentreiber unter Linux lauffähig wird. Allerdings gibt es diesbezüglich ja auch noch andere "Obstacles", wie z.B. die je nach Betriebssystem unterschiedlichen Fonts unter Swing...

Beste Grüße
PLUZ


----------



## Java-Freak (12. Jan 2011)

Dann solltet ihr aber wenigstens eine Alternative(etwa HTML Formular) anbieten anstatt Linux User auszuschließen....


----------

