3

I am trying to get my JNLP working with Java 8. I can build successfully, but when I attempt to launch I get the error below.

com.sun.deploy.net.JARSigningException: Found unsigned entry in resource: file:/proj/dist/apps/libs/jdom.jar
    at com.sun.deploy.security.EnhancedJarVerifier.validate(Unknown Source)
    at com.sun.deploy.cache.CacheEntry.processJar(Unknown Source)
    at com.sun.deploy.cache.CacheEntry.access$2100(Unknown Source)
    at com.sun.deploy.cache.CacheEntry$7.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.deploy.cache.CacheEntry.writeFileToDisk(Unknown Source)
    at com.sun.deploy.cache.CacheEntry.writeFileToDisk(Unknown Source)
    at com.sun.deploy.cache.Cache.downloadResourceToTempFile(Unknown Source)
    at com.sun.deploy.cache.Cache.downloadResourceToCache(Unknown Source)
    at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
    at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source)
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
    at com.sun.javaws.LaunchDownload$DownloadTask.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

I have done some research on this and it appears that in previous versions of Java it might be enough to simply toggle the "Keep temporary files on my computer" Java Control Panel setting. That doesn't seem to be working for Java 8.

I ran jarsigner -verify on the referenced jdom.jar and it says that it is verified, but also gives a few warnings. Would the warnings be preventing the JNLP from launching? Or do any of you see anything else that can point me in the right direction to resolve this?

jarsigner -verify -verbose dist\apps\libs\jdom.jar  

    s       8520 Tue Feb 07 23:14:06 PST 2006 META-INF/MANIFEST.MF  
            7071 Tue Oct 10 18:47:54 PDT 2006 META-INF/SPSCERT.SF  
            2931 Tue Oct 10 18:47:54 PDT 2006 META-INF/SPSCERT.RSA  
               0 Mon Feb 16 15:56:52 PST 2004 META-INF/  
            2753 Mon Feb 16 15:56:50 PST 2004 META-INF/info.xml  
               0 Mon Feb 16 15:56:46 PST 2004 org/  
     m         0 Mon Feb 16 15:56:50 PST 2004 org/jdom/  
     m         0 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/  
     m         0 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/  
     m         0 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/  
     m         0 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/  
     m         0 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/  
     m         0 Mon Feb 16 15:56:50 PST 2004 org/jdom/xpath/  
    sm       150 Mon Feb 16 15:56:50 PST 2004 JDOMAbout$1.class  
    sm       646 Mon Feb 16 15:56:50 PST 2004 JDOMAbout$Author.class  
    sm      3044 Mon Feb 16 15:56:50 PST 2004 JDOMAbout$Info.class  
    sm      2012 Mon Feb 16 15:56:50 PST 2004 JDOMAbout.class  
    sm      2979 Mon Feb 16 15:56:46 PST 2004 org/jdom/adapters/AbstractDOMAdapter.class  
    sm      2903 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/CrimsonDOMAdapter.class  
    sm       455 Mon Feb 16 15:56:46 PST 2004 org/jdom/adapters/DOMAdapter.class  
    sm      3504 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/JAXPDOMAdapter.class  
    sm      3255 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/OracleV1DOMAdapter.class  
    sm      3261 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/OracleV2DOMAdapter.class  
    sm      3847 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/XercesDOMAdapter.class  
    sm      3846 Mon Feb 16 15:56:48 PST 2004 org/jdom/adapters/XML4JDOMAdapter.class  
    sm      7800 Mon Feb 16 15:56:48 PST 2004 org/jdom/Attribute.class  
    sm      6933 Mon Feb 16 15:56:48 PST 2004 org/jdom/AttributeList.class  
    sm      1465 Mon Feb 16 15:56:48 PST 2004 org/jdom/CDATA.class  
    sm      1468 Mon Feb 16 15:56:48 PST 2004 org/jdom/Comment.class  
    sm      1429 Mon Feb 16 15:56:48 PST 2004 org/jdom/Content.class  
    sm      3482 Mon Feb 16 15:56:48 PST 2004 org/jdom/ContentList$FilterList.class  
    sm      5034 Mon Feb 16 15:56:48 PST 2004 org/jdom/ContentList$FilterListIterator.class  
    sm      7000 Mon Feb 16 15:56:48 PST 2004 org/jdom/ContentList.class  
    sm       845 Mon Feb 16 15:56:48 PST 2004 org/jdom/DataConversionException.class  
    sm      4521 Mon Feb 16 15:56:48 PST 2004 org/jdom/DefaultJDOMFactory.class  
    sm      2299 Mon Feb 16 15:56:48 PST 2004 org/jdom/DescendantIterator.class  
    sm      2561 Mon Feb 16 15:56:48 PST 2004 org/jdom/DocType.class  
    sm      9412 Mon Feb 16 15:56:48 PST 2004 org/jdom/Document.class  
    sm     15700 Mon Feb 16 15:56:48 PST 2004 org/jdom/Element.class  
    sm      2244 Mon Feb 16 15:56:48 PST 2004 org/jdom/EntityRef.class  
    sm      1177 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/AbstractFilter.class  
    sm      1596 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/AndFilter.class  
    sm      3154 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/ContentFilter.class  
    sm      2479 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/ElementFilter.class  
    sm       179 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/Filter.class  
    sm      1371 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/NegateFilter.class  
    sm      1590 Mon Feb 16 15:56:48 PST 2004 org/jdom/filter/OrFilter.class  
    sm      1387 Mon Feb 16 15:56:48 PST 2004 org/jdom/FilterIterator.class  
    sm      4192 Mon Feb 16 15:56:48 PST 2004 org/jdom/IllegalAddException.class  
    sm      1137 Mon Feb 16 15:56:48 PST 2004 org/jdom/IllegalDataException.class  
    sm      1148 Mon Feb 16 15:56:48 PST 2004 org/jdom/IllegalNameException.class  
    sm       959 Mon Feb 16 15:56:48 PST 2004 org/jdom/IllegalTargetException.class  
    sm       914 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/BuilderErrorHandler.class  
    sm      5901 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/DOMBuilder.class  
    sm      2836 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/JAXPParserFactory.class  
    sm      1698 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/JDOMParseException.class  
    sm     13738 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/SAXBuilder.class  
    sm     12563 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/SAXHandler.class  
    sm      1724 Mon Feb 16 15:56:48 PST 2004 org/jdom/input/TextBuffer.class  
    sm      4148 Mon Feb 16 15:56:46 PST 2004 org/jdom/JDOMException.class  
    sm      1562 Mon Feb 16 15:56:48 PST 2004 org/jdom/JDOMFactory.class  
    sm      3064 Mon Feb 16 15:56:48 PST 2004 org/jdom/Namespace.class  
    sm      8558 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/DOMOutputter.class  
    sm       155 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/EscapeStrategy.class  
    sm      2250 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/Format$DefaultEscapeStrategy.class  
    sm       803 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/Format$TextMode.class  
    sm      4164 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/Format.class  
    sm       923 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/JDOMLocator.class  
    sm      2038 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/NamespaceStack.class  
    sm     17766 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/SAXOutputter.class  
    sm       548 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/XMLOutputter$NamespaceStack.class  
    sm     21443 Mon Feb 16 15:56:50 PST 2004 org/jdom/output/XMLOutputter.class  
    sm      1049 Mon Feb 16 15:56:48 PST 2004 org/jdom/Parent.class  
    sm      5930 Mon Feb 16 15:56:48 PST 2004 org/jdom/ProcessingInstruction.class  
    sm      2521 Mon Feb 16 15:56:48 PST 2004 org/jdom/Text.class  
    sm      3571 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/JDOMResult$DocumentBuilder.class  
    sm      1320 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/JDOMResult$FragmentHandler.class  
    sm      3241 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/JDOMResult.class  
    sm      1454 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/JDOMSource$DocumentReader.class  
    sm      1514 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/JDOMSource$JDOMInputSource.class  
    sm      2713 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/JDOMSource.class  
    sm      2969 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/XSLTransformer.class  
    sm       856 Mon Feb 16 15:56:50 PST 2004 org/jdom/transform/XSLTransformException.class  
    sm     15975 Mon Feb 16 15:56:50 PST 2004 org/jdom/Verifier.class  
    sm      1549 Mon Feb 16 15:56:50 PST 2004 org/jdom/xpath/JaxenXPath$NSContext.class  
    sm      4040 Mon Feb 16 15:56:50 PST 2004 org/jdom/xpath/JaxenXPath.class  
    sm      1109 Mon Feb 16 15:56:50 PST 2004 org/jdom/xpath/XPath$XPathString.class  
    sm      4437 Mon Feb 16 15:56:50 PST 2004 org/jdom/xpath/XPath.class  

      s = signature was verified  
      m = entry is listed in manifest  
      k = at least one certificate was found in keystore  
      i = at least one certificate was found in identity scope  
      jar verified.
         Warning:
      This jar contains unsigned entries which have not been integrity-checked.
      This jar contains entries whose signer certificate has expired.
      This jar contains signatures that does not include a timestamp. Without a timestamp, users may not be able to validate this jar after the signer certificate's expiration date (2009-11-07) or after any future revocation date.
Didier L
  • 18,905
  • 10
  • 61
  • 103
andreamc
  • 646
  • 1
  • 9
  • 19
  • can you try to delete all files in the temporary folder on the java control panel and then try to run it again? – kucing_terbang Dec 16 '15 at 06:18
  • 1
    Where did you get the jar from? You might have to unsign the jar and resign it yourself. If you are using the `webstart-maven-plugin`, it has [an unsign option](http://www.mojohaus.org/webstart/webstart-maven-plugin/jnlp-inline-mojo.html#unsignAlreadySignedJars). – Didier L Dec 16 '15 at 10:44
  • @DidierL, thanks for pointing me in the right direction. I thought I was using an unsigned version of the jar and signing it during my build, but apparently something somewhere is pointing to an already signed version. I swapped that out with the unsigned one and am able to move forward now (to my next error...). If you want to write this as an answer I'll accept. – andreamc Dec 16 '15 at 23:09
  • See also http://stackoverflow.com/questions/17923635/found-unsigned-entry-in-resource – Vadzim Sep 27 '16 at 16:48

1 Answers1

2

Your jar is already signed with an invalid signature.

You have to unsign the jar and resign it yourself.

If you are using the webstart-maven-plugin, it has an unsign option.

Didier L
  • 18,905
  • 10
  • 61
  • 103