2016-11-03 1 views
1

Ich habe an einer Applet-Ersetzung-Anwendung gearbeitet, die unter Java 1.8 ausgeführt werden muss. Daher habe ich alle JARs mit einem vertrauenswürdigen Zertifikat signiert und das Attribut Trusted-Library: true hinzugefügt alle ihre MANIFEST.MF Dateien.ClassNotFoundException ausgelöst in Java Web Start Trusted-Library-Anwendung

Mein JNLP sieht wie folgt aus:

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<jnlp codebase="http://localhost:8080/myWebApp/myApp/ 
"href="myAppLaunch.jnlp" spec="1.0+"> 
    <information> 
     <title>My JWS Application</title> 
     <vendor>My Company</vendor> 
     <homepage href=""/> 
     <description>This application is an applet replacement that needs to satisfy the requirements of a High Security setting in a Java 1.8 environment</description> 
     <description kind="short">My App</description> 
    </information> 
    <update check="always"/> 
    <security> 
<all-permissions/> 
</security> 
    <resources> 
     <j2se version="1.7+"/> 
     <jar href="myApp.jar" main="true"/> 
    <jar href="lib/commons-httpclient-3.0.1.jar"/> 
<jar href="lib/commons-logging-1.1.jar"/> 
<jar href="lib/commons-codec-1.3.jar"/> 
<jar href="lib/dmapiclientlib-1.3.03.jar"/> 
<jar href="lib/mail.jar"/> 
<jar href="lib/activation.jar"/> 
<jar href="lib/log4j-1.2.17.jar"/> 
<jar href="lib/datedFileAppender-1.0.2.jar"/> 
</resources> 
    <application-desc main-class="com.myCompany.myApp.myMainClass"> 
    <argument>action=myAction</argument> 
</application-desc> 
</jnlp> 

Wenn ich die Anwendung über Java Web Start starten, erhalte ich eine ClassNotFoundException für eine Klasse (URIException) in einer der JAR-Dateien dieser Anwendung auf abhängt (commons-httpclient-3.0.1.jar) .

Ich habe diese Anwendung über NetBeans erstellt und hatte dies schon einmal erfolgreich getan, aber aus irgendeinem Grund kann ich diesen Fehler nicht mehr überwinden. Was mache ich falsch?

+1

1) Achten Sie darauf, die JNLP überprüfen janela verwenden, verfügbar unter [share drive] (https://drive.google.com/drive/#folders/0B5B9wDXIGw9lUnJaUjA2cmlVRE0). 2) Sobald das Programm fehlerfrei funktioniert (ignorieren Sie die Warnungen und Optimierungen), deinstallieren Sie es und versuchen Sie es mit der App. nochmal. Wenn es immer noch den Fehler auslöst, poste a) den Inhalt des JNLP. b) die Struktur des Servers, auf der der Speicherort für JNLP und Jars angezeigt wird. –

+0

Vielen Dank für Ihre Antwort, Andrew. Ich habe die janela.jar-Datei von Ihrem Google Drive heruntergeladen, aber ich weiß nicht, wie ich sie verwenden soll. Führe ich es einfach aus, d. H. "Java janela.jar" und eine GUI erscheint, oder muss ich den Namen der JNLP-Datei in den Befehl aufnehmen? –

+0

* "Ich führe es einfach" * Es hat eine GUI und ist ein ausführbares Jar, nur doppelklicken Sie darauf! Hoffentlich sollte der Rest aus den Kontrollen und Etiketten klar werden. –

Antwort

1

Ich glaube, dass das Problem, das ich habe aus Ändern der JAR-Dateien in dämmt ausgeführt wird (durch Hinzufügen eines vertrauenswürdigen-Bibliothek Attribut) nach den Krügen

unterzeichnet worden war
Verwandte Themen