签名Jar通过Web启动给出无符号错误

时间:2014-03-21 19:29:20

标签: java glassfish java-web-start jarsigner

标题说真的。我现在设法构建和部署包含EJB,war和appclient项目的ear文件。我有jnlp文件指向正确的位置,我已经签署了Appclient jar文件。

如果你想要看它的here。该错误表明未签名的jar,但只有一个jar,因为我使用了jarsplice。有谁能告诉我如何解决这个最后的问题?

直接链接到jnlp here jnlp的内容:

<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="6.0+" codebase="http://www.mazerunner.co.uk/mazeApp" href="http://www.mazerunner.co.uk/mazeWeb/res/mazeApp.jnlp">
    <information>
         <title>Maze Runner</title>
         <vendor>Vendor</vendor>
     </information>
      <security>
        <all-permissions/>
      </security>

      <resources>
      <!-- Application Resources -->
        <j2se version="1.7+"/>
        <jar href="mazeAppClient.jar"  main="true"/>
        <jar href="lib/jME3-core.jar"/>
        <jar href="lib/jME3-desktop.jar" />
        <jar href="lib/jME3-plugins.jar" />
        <jar href="lib/jME3-effects.jar" />
        <jar href="lib/jME3-networking.jar" />
        <jar href="lib/jME3-jogg.jar" />
        <jar href="lib/j-ogg-oggd.jar" />
        <jar href="lib/j-ogg-vorbisd.jar"/>
        <jar href="lib/jME3-terrain.jar" />
        <jar href="lib/jME3-lwjgl.jar" />
        <jar href="lib/jME3-lwjgl-natives.jar" />
        <jar href="lib/jinput.jar" />
        <jar href="lib/lwjgl.jar" />
        <jar href="lib/jME3-jbullet.jar" />
        <jar href="lib/jbullet.jar" />
        <jar href="lib/vecmath.jar" />
        <jar href="lib/stack-alloc.jar" />
        <jar href="lib/jME3-niftygui.jar" />
        <jar href="lib/nifty.jar" />
        <jar href="lib/nifty-default-controls.jar" />
        <jar href="lib/nifty-style-black.jar" />
        <jar href="lib/eventbus.jar" />
        <jar href="lib/xmlpull-xpp3.jar" />
        <jar href="lib/jME3-testdata.jar" />
    </resources>
 <application-desc main-class="Main"></application-desc>
</jnlp>

布局的耳朵文件是:

mazeApp ear:   
    |- lib
        |- Jmonkey libs   
    |- META-INF   
    |- mazeAppClient.jar   
    |- mazeEjb.jar   
    |- mazeWeb.war

第三方库位于自己的目录中,并在jnlp中作为资源引用。他们都是自签名的。

目前我仍然收到无符号错误,但我认为这是因为找不到任何资源。如果我从页面加载jnlp(localhost)我得到无符号错误但是如果我从javaws运行jnlp我可以看到在引发无符号错误之前找不到所有文件。

[edit-update]这是一个配置问题,因为它似乎只是路径mazeApp / MazeAppClent不存在或可见?

[edit-update]将我的主jar文件的路径改为<jar href="mazeAppClient/mazeAppClient.jar" main="true"/>似乎允许找到它,即它不再包含在未找到的列表中。但是,在lib目录中对其他jar应用相同的更改不会产生相同的影响。

JaNeLa报告上面显示的jnlp中的url

JaNeLA Report - version 11.05.17


Report for http://www.mazerunner.co.uk/mazeWeb/res/mazeApp.jnlp

XML encoding not known, but declared as UTF-8
Optimize this application for off-line use by adding the <offline-allowed /> flag.
Downloads can be optimized by specifying a resource size for 'mazeAppClient.jar'.
The resource download at mazeAppClient.jar can be optimized by removing the (default) value of download='eager'.
Lazy downloads might not work as expected for mazeAppClient.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-core.jar'.
The resource download at lib/jME3-core.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-core.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-core.jar resource.
Lazy downloads might not work as expected for lib/jME3-core.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-desktop.jar'.
The resource download at lib/jME3-desktop.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-desktop.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-desktop.jar resource.
Lazy downloads might not work as expected for lib/jME3-desktop.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-plugins.jar'.
The resource download at lib/jME3-plugins.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-plugins.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-plugins.jar resource.
Lazy downloads might not work as expected for lib/jME3-plugins.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-effects.jar'.
The resource download at lib/jME3-effects.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-effects.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-effects.jar resource.
Lazy downloads might not work as expected for lib/jME3-effects.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-networking.jar'.
The resource download at lib/jME3-networking.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-networking.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-networking.jar resource.
Lazy downloads might not work as expected for lib/jME3-networking.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-jogg.jar'.
The resource download at lib/jME3-jogg.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-jogg.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-jogg.jar resource.
Lazy downloads might not work as expected for lib/jME3-jogg.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/j-ogg-oggd.jar'.
The resource download at lib/j-ogg-oggd.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/j-ogg-oggd.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/j-ogg-oggd.jar resource.
Lazy downloads might not work as expected for lib/j-ogg-oggd.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/j-ogg-vorbisd.jar'.
The resource download at lib/j-ogg-vorbisd.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/j-ogg-vorbisd.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/j-ogg-vorbisd.jar resource.
Lazy downloads might not work as expected for lib/j-ogg-vorbisd.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-terrain.jar'.
The resource download at lib/jME3-terrain.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-terrain.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-terrain.jar resource.
Lazy downloads might not work as expected for lib/jME3-terrain.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-lwjgl.jar'.
The resource download at lib/jME3-lwjgl.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-lwjgl.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-lwjgl.jar resource.
Lazy downloads might not work as expected for lib/jME3-lwjgl.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-lwjgl-natives.jar'.
The resource download at lib/jME3-lwjgl-natives.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-lwjgl-natives.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-lwjgl-natives.jar resource.
Lazy downloads might not work as expected for lib/jME3-lwjgl-natives.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jinput.jar'.
The resource download at lib/jinput.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jinput.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jinput.jar resource.
Lazy downloads might not work as expected for lib/jinput.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/lwjgl.jar'.
The resource download at lib/lwjgl.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/lwjgl.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/lwjgl.jar resource.
Lazy downloads might not work as expected for lib/lwjgl.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-jbullet.jar'.
The resource download at lib/jME3-jbullet.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-jbullet.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-jbullet.jar resource.
Lazy downloads might not work as expected for lib/jME3-jbullet.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jbullet.jar'.
The resource download at lib/jbullet.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jbullet.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jbullet.jar resource.
Lazy downloads might not work as expected for lib/jbullet.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/vecmath.jar'.
The resource download at lib/vecmath.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/vecmath.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/vecmath.jar resource.
Lazy downloads might not work as expected for lib/vecmath.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/stack-alloc.jar'.
The resource download at lib/stack-alloc.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/stack-alloc.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/stack-alloc.jar resource.
Lazy downloads might not work as expected for lib/stack-alloc.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-niftygui.jar'.
The resource download at lib/jME3-niftygui.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-niftygui.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-niftygui.jar resource.
Lazy downloads might not work as expected for lib/jME3-niftygui.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/nifty.jar'.
The resource download at lib/nifty.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/nifty.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/nifty.jar resource.
Lazy downloads might not work as expected for lib/nifty.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/nifty-default-controls.jar'.
The resource download at lib/nifty-default-controls.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/nifty-default-controls.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/nifty-default-controls.jar resource.
Lazy downloads might not work as expected for lib/nifty-default-controls.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/nifty-style-black.jar'.
The resource download at lib/nifty-style-black.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/nifty-style-black.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/nifty-style-black.jar resource.
Lazy downloads might not work as expected for lib/nifty-style-black.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/eventbus.jar'.
The resource download at lib/eventbus.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/eventbus.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/eventbus.jar resource.
Lazy downloads might not work as expected for lib/eventbus.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/xmlpull-xpp3.jar'.
The resource download at lib/xmlpull-xpp3.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/xmlpull-xpp3.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/xmlpull-xpp3.jar resource.
Lazy downloads might not work as expected for lib/xmlpull-xpp3.jar unless the download 'part' is specified. 
Downloads can be optimized by specifying a resource size for 'lib/jME3-testdata.jar'.
The resource download at lib/jME3-testdata.jar can be optimized by removing the (default) value of download='eager'.
The resource download at lib/jME3-testdata.jar can be optimized by removing the (default) value of main='false'.
It might be possible to optimize the start-up of the app. by  specifying download='lazy' for the lib/jME3-testdata.jar resource.
Lazy downloads might not work as expected for lib/jME3-testdata.jar unless the download 'part' is specified. 

如果我运行javaws

,这是我得到的输出
javaws  http://www.mazerunner.co.uk/mazeWeb/res/mazeApp.jnlp
JAR http://www.mazerunner.co.uk/mazeApp/mazeAppClient.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-core.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-desktop.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-plugins.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-effects.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-networking.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-jogg.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/j-ogg-oggd.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/j-ogg-vorbisd.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-terrain.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-lwjgl.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-lwjgl-natives.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jinput.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/lwjgl.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-jbullet.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jbullet.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/vecmath.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/stack-alloc.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-niftygui.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/nifty.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/nifty-default-controls.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/nifty-style-black.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/eventbus.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/xmlpull-xpp3.jar not found. Continuing.
JAR http://www.mazerunner.co.uk/mazeApp/lib/jME3-testdata.jar not found. Continuing.
netx: Initialization Error: Could not initialize application. (Fatal: Application Error: Cannot grant permissions to unsigned jars. Application requested security permissions, but jars are not signed.)
net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize application. 
    at net.sourceforge.jnlp.Launcher.createApplication(Launcher.java:797)
    at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:555)
    at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:908)
Caused by: net.sourceforge.jnlp.LaunchException: Fatal: Application Error: Cannot grant permissions to unsigned jars. Application requested security permissions, but jars are not signed.
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.setSecurity(JNLPClassLoader.java:319)
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:239)
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:381)
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:337)
    at net.sourceforge.jnlp.Launcher.createApplication(Launcher.java:789)
    ... 2 more

请注意,如果我修改第一个jar以包含mazeAppClient / mazeAppCLient.jar,它似乎找不到它,但同样对其他jar文件不起作用。

点击我获得的网站上的启动按钮

net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize application. 
    at net.sourceforge.jnlp.Launcher.createApplication(Launcher.java:797)
    at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:555)
    at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:908)
Caused by: net.sourceforge.jnlp.LaunchException: Fatal: Application Error: Cannot grant permissions to unsigned jars. Application requested security permissions, but jars are not signed.
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.setSecurity(JNLPClassLoader.java:319)
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:239)
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:381)
    at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:337)
    at net.sourceforge.jnlp.Launcher.createApplication(Launcher.java:789)
    ... 2 more

我已经签了罐子,所以我得到了那个错误,因为它们还没有被下载? [edit-update]我刚刚从实际网站获得了一个fileIOException,因此找不到具有该网址的应用

0 个答案:

没有答案