4 Replies Latest reply on Jun 5, 2014 2:07 PM by user6878741

    Deployment Rule Set broken with Java 7u55




      I'm using Deployment Rule Set in my company environment, its signed by code signing certificate that is given out by internal CA. After I upgraded to Java 7u55, the Deployment Rule Set does not recognize older statically installed Java version.


      Versions I have:

      7u45 - install directory: C:\Program Files\Java\jre1.7.0_45

      7u51 - install directory: C:\Program Files\Java\jre1.7.0_51

      7u55 - install directory: C:\Program Files\Java\jre1.7.0_55 or C:\Program Files\Java\jre7\ - neither does not work


      When I go to site described in Ruleset and that has to use Java 7u45, then I receive an message "Deployment Rule Set required Java version 1.7.0_45 not available. In the same way it doesn't recognize or even Java version 6.


      When I uninstall Java 7u55, everthing works fine again.


      My ruleset looks like this:

      <ruleset version="1.0+">
                <id location="first.site.com" />
                <action permission="run" version="1.7.0_45" />
                <id location="second.site.com" />
                <action permission="run" version="1.7.0_51" />
                <id />
                <action permission="default" />


      Anyone knows what's wrong or is it a bug?

        • 1. Re: Deployment Rule Set broken with Java 7u55

          We have been using the Oracle deployment rule set with Java 7u51 and 7u38 and it has been working good managing legacy versions (using static installs) of Java 6 with Java 7. When we upgraded clients to Java 7u55 our DRS rule stopped functioning and the error "Deployment rule set required java 1.6.0_38 not available". So we are having same issues you are and the only change has been 7u55. I did post a bug report but haven't heard back.

          • 2. Re: Deployment Rule Set broken with Java 7u55
            Erik Costlow-Oracle

            One part here catches my eye: DeploymentRuleSet.jar is signed with a certificate from an internal CA.

            Technically that is not supported, but it will work assuming you have added the internal CA to your installations. My first guess would be that this assumption is not valid, meaning the CA is missing from the newer version.


            This can be quickly checked by:

            C:\program files\java\VERSION\bin\jarsigner -verify DeploymentRuleSet.jar


            If one of those says that the JAR is invalid, then it would prove that the internal CA was missing.

            • 3. Re: Deployment Rule Set broken with Java 7u55

              costlow - I disagree.  If I'm using IE, then I only need the internal certficate used to sign the jar to be also insalled on the machine in question in the windows CA Certs store.  If the cert was the issue, why does it work with 7u51.  If it was a bad cert, it should fail with every version.  Plus, I think the pop up has a different error message if it has a cert issue.


              I'm having the exact same issue as the OP described and it all started with 7u55.  Here's what I've found:


              - With 7u55 or 7u60 installed, the error will come up rergardless of what prior version is being requested.

              - If 7u51 is the latest installed, it works

              -  If 8u05 is installed with 7u55 and/or 7u60, it works

              - If I install the 7u60 EA b15, it works


              Something in the final release is being added that blocks this functionality, but for some odd reason only in the 7 family starting with 7u55.


              Any insight you could give would be very helpful.  In the meantime, I am deploying 8u05 to cover this up, but it does pose issues for some apps that don't work with the new 8 family plugin.

              • 4. Re: Deployment Rule Set broken with Java 7u55

                It looks like this is being addressed in the the later versions of Java.  I think this bug report is the one affecting us: