Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8152827

JARSigningException when trying to load resources from a signed jar

XMLWordPrintable

    • x86_64
    • windows_7

      FULL PRODUCT VERSION :
      Java Web Start 11.77.2.03
      JRE-Version verwenden 1.8.0_77-b03 Java HotSpot(TM) 64-Bit Server VM

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Version 6.1.7601]

      A DESCRIPTION OF THE PROBLEM :
      Starting the application with WebStart, a JARSigningException is thrown, when the application is trying to load resources from a signed jar.

      java.security.cert.CertificateException: Signatur konnte nicht verifiziert werden in Ressource: https://trial.amparex.net:443/amparex/lib/strings/strings.jar
      at com.sun.deploy.security.TrustDecider.ensureAllJarEntriesSigned(Unknown Source)
      at com.sun.deploy.security.TrustDecider.getValidationState(Unknown Source)
      at com.sun.deploy.security.TrustDecider.validateChain(Unknown Source)
      at com.sun.deploy.security.TrustDecider.isAllPermissionGrantedInt(Unknown Source)
      at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
      at com.sun.deploy.security.DeployURLClassLoader.getResourcePermission(Unknown Source)
      at com.sun.deploy.security.DeployURLClassLoader.getResourceAsStream(Unknown Source)
      at java.util.ResourceBundle$Control$1.run(Unknown Source)
      at java.util.ResourceBundle$Control$1.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.util.ResourceBundle$Control.newBundle(Unknown Source)
      at java.util.ResourceBundle.loadBundle(Unknown Source)
      at java.util.ResourceBundle.findBundle(Unknown Source)
      at java.util.ResourceBundle.findBundle(Unknown Source)
      at java.util.ResourceBundle.findBundle(Unknown Source)
      at java.util.ResourceBundle.getBundleImpl(Unknown Source)
      at java.util.ResourceBundle.getBundle(Unknown Source)
      at de.mtf.impulse.fw.shared.resource.StringsResourceBundle.loadBundle(StringsResourceBundle.java:91)
      at de.mtf.impulse.fw.shared.resource.StringsResourceBundle.initialize(StringsResourceBundle.java:47)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at de.mtf.impulse.fw.shared.util.ReflectionHelper.invoke(ReflectionHelper.java:295)
      at de.mtf.impulse.fw.shared.component.ComponentFactory.doCreate(ComponentFactory.java:472)
      at de.mtf.impulse.fw.shared.component.ComponentFactory.create(ComponentFactory.java:364)
      at de.mtf.impulse.fw.shared.component.ComponentFactory.create(ComponentFactory.java:354)
      at de.mtf.impulse.fw.shared.resource.Strings.createInstance(Strings.java:64)
      at de.mtf.impulse.fw.shared.resource.Strings.instance(Strings.java:55)
      at de.mtf.impulse.fw.shared.resource.Strings.instance(Strings.java:40)
      at de.mtf.impulse.common.client.standard.application.SessionNotificationLogin.changeUser(SessionNotificationLogin.java:85)
      at de.mtf.impulse.common.client.standard.application.BranchChainLogin.doLogin(BranchChainLogin.java:969)
      at de.mtf.impulse.common.client.standard.application.BranchChainLogin.doLogin(BranchChainLogin.java:901)
      at de.mtf.impulse.common.client.trial.application.TrialLogin.doLogin(TrialLogin.java:244)
      at de.mtf.impulse.common.client.trial.application.TrialLogin.actionPerformed(TrialLogin.java:214)
      at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
      at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
      at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
      at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
      at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
      at java.awt.Component.processMouseEvent(Unknown Source)
      at javax.swing.JComponent.processMouseEvent(Unknown Source)
      at java.awt.Component.processEvent(Unknown Source)
      at java.awt.Container.processEvent(Unknown Source)
      at java.awt.Component.dispatchEventImpl(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Window.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      at java.awt.EventQueue.access$500(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.WaitDispatchSupport$2.run(Unknown Source)
      at java.awt.event.InvocationEvent.dispatch(Unknown Source)
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      at java.awt.EventQueue.access$500(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.run(Unknown Source)
      Caused by: com.sun.deploy.net.JARSigningException: Signatur konnte nicht verifiziert werden in Ressource: https://trial.amparex.net:443/amparex/lib/strings/strings.jar
      ... 83 more


      REGRESSION. Last worked in version 8u73

      ADDITIONAL REGRESSION INFORMATION:
      java version "1.8.0_73"
      Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
      Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      (1) ....\jre1.8.0_77\bin>.\javaws.exe https://trial.amparex.net/amparex/trial.jnlp
      (2) In the next panel select the first "Filialkette" (chain) and login with user="test" and password="test"


      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      the started application
      ACTUAL -
      Starting the application failed with Error-Message "Zertifikat konnte nicht validiert werden. Dia Anwendung wird nicht ausgeführt"
      The Button "More Informations...." shows the exception:
      java.security.cert.CertificateException: Signatur konnte nicht verifiziert werden in Ressource: https://trial.amparex.net:443/amparex/lib/strings/strings.jar
      at com.sun.deploy.security.TrustDecider.ensureAllJarEntriesSigned(Unknown Source)


      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      java.security.cert.CertificateException: Signatur konnte nicht verifiziert werden in Ressource: https://trial.amparex.net:443/amparex/lib/strings/strings.jar
      at com.sun.deploy.security.TrustDecider.ensureAllJarEntriesSigned(Unknown Source)
      at com.sun.deploy.security.TrustDecider.getValidationState(Unknown Source)
      at com.sun.deploy.security.TrustDecider.validateChain(Unknown Source)
      at com.sun.deploy.security.TrustDecider.isAllPermissionGrantedInt(Unknown Source)
      at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
      at com.sun.deploy.security.DeployURLClassLoader.getResourcePermission(Unknown Source)
      at com.sun.deploy.security.DeployURLClassLoader.getResourceAsStream(Unknown Source)
      at java.util.ResourceBundle$Control$1.run(Unknown Source)
      at java.util.ResourceBundle$Control$1.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.util.ResourceBundle$Control.newBundle(Unknown Source)
      at java.util.ResourceBundle.loadBundle(Unknown Source)
      at java.util.ResourceBundle.findBundle(Unknown Source)
      at java.util.ResourceBundle.findBundle(Unknown Source)
      at java.util.ResourceBundle.findBundle(Unknown Source)
      at java.util.ResourceBundle.getBundleImpl(Unknown Source)
      at java.util.ResourceBundle.getBundle(Unknown Source)
      at de.mtf.impulse.fw.shared.resource.StringsResourceBundle.loadBundle(StringsResourceBundle.java:91)
      at de.mtf.impulse.fw.shared.resource.StringsResourceBundle.initialize(StringsResourceBundle.java:47)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at de.mtf.impulse.fw.shared.util.ReflectionHelper.invoke(ReflectionHelper.java:295)
      at de.mtf.impulse.fw.shared.component.ComponentFactory.doCreate(ComponentFactory.java:472)
      at de.mtf.impulse.fw.shared.component.ComponentFactory.create(ComponentFactory.java:364)
      at de.mtf.impulse.fw.shared.component.ComponentFactory.create(ComponentFactory.java:354)
      at de.mtf.impulse.fw.shared.resource.Strings.createInstance(Strings.java:64)
      at de.mtf.impulse.fw.shared.resource.Strings.instance(Strings.java:55)
      at de.mtf.impulse.fw.shared.resource.Strings.instance(Strings.java:40)
      at de.mtf.impulse.common.client.standard.application.SessionNotificationLogin.changeUser(SessionNotificationLogin.java:85)
      at de.mtf.impulse.common.client.standard.application.BranchChainLogin.doLogin(BranchChainLogin.java:969)
      at de.mtf.impulse.common.client.standard.application.BranchChainLogin.doLogin(BranchChainLogin.java:901)
      at de.mtf.impulse.common.client.trial.application.TrialLogin.doLogin(TrialLogin.java:244)
      at de.mtf.impulse.common.client.trial.application.TrialLogin.actionPerformed(TrialLogin.java:214)
      at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
      at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
      at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
      at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
      at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
      at java.awt.Component.processMouseEvent(Unknown Source)
      at javax.swing.JComponent.processMouseEvent(Unknown Source)
      at java.awt.Component.processEvent(Unknown Source)
      at java.awt.Container.processEvent(Unknown Source)
      at java.awt.Component.dispatchEventImpl(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Window.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      at java.awt.EventQueue.access$500(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.WaitDispatchSupport$2.run(Unknown Source)
      at java.awt.event.InvocationEvent.dispatch(Unknown Source)
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      at java.awt.EventQueue.access$500(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.run(Unknown Source)
      Caused by: com.sun.deploy.net.JARSigningException: Signatur konnte nicht verifiziert werden in Ressource: https://trial.amparex.net:443/amparex/lib/strings/strings.jar
      ... 83 more


      REPRODUCIBILITY :
      This bug can be reproduced always.

      CUSTOMER SUBMITTED WORKAROUND :
      Uninstall 8u77 and install the previous version 8u73

            mcherkas Mikhail Cherkasov (Inactive)
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: