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

Improve exception messages in URLPermission

    Details

    • Subcomponent:
    • Resolved In Build:
      b116

      Backports

        Description

        One of CAP member's customer receive the follow error after an update to Java
        8u25 and 8u31 on a citrix terminal server. However, they have a problem to
        reproduce it.

         CAP member ask if it is possible to improve the exception and add the
        invalid actions strings to the exception?


        Check the screenshot and error message with Java 1.8.25 und 1.8.31.

        java.lang.IllegalArgumentException: invalid actions string
                    at java.net.URLPermission.init(Unknown Source)
                    at java.net.URLPermission.<init>(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.URLtoSocketPermission(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
                    at com.sun.deploy.net.HttpUtils.followRedirects(Unknown Source)
                    at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
                    at com.sun.deploy.net.BasicHttpRequest.doGetRequestEX(Unknown Source)
                    at com.sun.deploy.cache.ResourceProviderImpl.checkUpdateAvailable(Unknown Source)
                    at com.sun.deploy.cache.ResourceProviderImpl.isUpdateAvailable(Unknown Source)
                    at com.sun.deploy.cache.DeployCacheHandler.get(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection$6.run(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection$6.run(Unknown Source)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at java.security.AccessController.doPrivileged(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.access$200(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at java.security.AccessController.doPrivileged(Unknown Source)
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
                    at sun.security.provider.certpath.URICertStore.engineGetCRLs(Unknown Source)
                    at java.security.cert.CertStore.getCRLs(Unknown Source)
                    at sun.security.provider.certpath.DistributionPointFetcher.getCRL(Unknown Source)
                    at sun.security.provider.certpath.DistributionPointFetcher.getCRLs(Unknown Source)
                    at sun.security.provider.certpath.DistributionPointFetcher.getCRLs(Unknown Source)
                    at sun.security.provider.certpath.DistributionPointFetcher.getCRLs(Unknown Source)
                    at com.sun.deploy.security.RevocationChecker.checkCRLs(Unknown Source)
                    at com.sun.deploy.security.RevocationChecker.check(Unknown Source)
                    at com.sun.deploy.security.TrustDecider.checkRevocationStatus(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.isAllPermissionGranted(Unknown Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.isTrustedByTrustDecider(Unknown Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.getTrustedCodeSources(Unknown Source)
                    at com.sun.deploy.security.CPCallbackHandler$ParentCallback.strategy(Unknown Source)
                    at
        com.sun.deploy.security.CPCallbackHandler$ParentCallback.openClassPathElement(
        Unknown Source)
                    at
        com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown
        Source)
                    at
        com.sun.deploy.security.DeployURLClassPath$JarLoader.access$800(Unknown
        Source)
                    at
        com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at
        com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown
        Source)
                    at
        com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(Unknown Source)
                    at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown
        Source)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown
        Source)
                    at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown
        Source)
                    at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown
        Source)
                    at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
                    at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown
        Source)
                    at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown
        Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown
        Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown
        Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown
        Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown
        Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown
        Source)
                    at java.lang.ClassLoader.loadClass(Unknown Source)
                    at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
                    at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown
        Source)
                    at
        sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
                    at java.lang.Thread.run(Unknown Source)

          Activity

          Hide
          coffeys Sean Coffey added a comment -
          "java.lang.IllegalArgumentException: invalid actions string"

          - certainly makes sense to improve such messages. Unless there's a good reason, we should be printing the string that's causing issue. From a supportability point of view, every IllegalArgumentException throw should be examined for better messaging.
          Show
          coffeys Sean Coffey added a comment - "java.lang.IllegalArgumentException: invalid actions string" - certainly makes sense to improve such messages. Unless there's a good reason, we should be printing the string that's causing issue. From a supportability point of view, every IllegalArgumentException throw should be examined for better messaging.
          Hide
          hgupdate HG Updates added a comment -
          URL: http://hg.openjdk.java.net/jdk9/dev/jdk/rev/a7147a466b12
          User: coffeys
          Date: 2016-04-20 21:47:24 +0000
          Show
          hgupdate HG Updates added a comment - URL: http://hg.openjdk.java.net/jdk9/dev/jdk/rev/a7147a466b12 User: coffeys Date: 2016-04-20 21:47:24 +0000
          Hide
          hgupdate HG Updates added a comment -
          URL: http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/a7147a466b12
          User: lana
          Date: 2016-04-27 18:46:47 +0000
          Show
          hgupdate HG Updates added a comment - URL: http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/a7147a466b12 User: lana Date: 2016-04-27 18:46:47 +0000

            People

            • Assignee:
              coffeys Sean Coffey
              Reporter:
              shadowbug Shadow Bug
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: