Исключение ClassNotFoundException, создаваемое в Java Web Start Trusted-Library Application

Я работал над приложением для замены апплета, которое должно работать под Java 1.8, поэтому я подписал все JAR-файлы с использованием доверенного сертификата и добавил атрибут Trusted-Library: true всем своим MANIFEST.MF файлы.

Мой JNLP выглядит так:

<?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>

Когда я запускаю приложение через Java Web Start, я получаю ClassNotFoundException для класса (URIException) в одном из JAR-файлов это приложение зависит от (commons-httpclient-3.0.1.jar).

Я создавал это приложение через NetBeans и однажды делал это успешно, но сейчас по какой-то причине не могу обойти эту ошибку. Что я делаю неправильно?

1 ответ

Решение

Я полагаю, что проблема, с которой я столкнулся, связана с изменением файлов JAR (путем добавления атрибута доверенной библиотеки) после подписания JAR-файлов.

Другие вопросы по тегам