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

NullPointerException when starting applet from Firefox (if applet is not cached)

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Incomplete
    • Icon: P3 P3
    • 9
    • 7u40
    • deploy
    • windows_7

      FULL PRODUCT VERSION :
      java version "1.7.0_40"
      Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
      Java HotSpot(TM) Client VM (build 24.0-b56, mixed mode, sharing)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Version 6.1.7601]

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      Using JRE version 1.7.0_40-b43 Java HotSpot(TM) Client VM (64-bit)


      A DESCRIPTION OF THE PROBLEM :
      I have a self-signed applet running on a Tomcat server.
      After updating my jre plug-in version from Java 6.X to 1.7.0_40, the applet no longer runs on Firefox/Chrome (till the applet is cached by IE).It runs on IE just fine. Subsequently, the cached applet can then be used by Firefox/Chrome. More details below.




      REGRESSION. Last worked in version 6u45

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      - Download/write a simple applet . (I downloaded the HelloWorld.jar from http://docs.oracle.com/javase/tutorial/deployment/applet/examples/dist/applet_HelloWorld/applet_HelloWorld.jar and extracted the applet class files)
      - Create a manifest file with essential info needed:
         Permissions: sandbox
         Main-Class: HelloWorld
      -Create jar
         jar cvfm test.jar MANIFEST.MF *.class
      - Sign jar using keystore file (created using keytool)
         jarsigner test.jar <name>
      - Deploy the applet using the <applet> tag




      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      The applet runs on Firefox/Chrome/IE.
      ACTUAL -
      This runs on IE. it does not run on Firefox/Chrome.

      After this runs on IE and the applet is cached, it can run on Firefox/Chrome.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      basic: Added progress listener: sun.plugin.util.ProgressMonitorAdapter@1401ab6
      preloader: Installing progress monitor true
      basic: Plugin2ClassLoader.addURL parent called for https://127.0.0.1/TestApp/html/test.jar
      preloader: Using preloader class: null com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter@c99b58
      preloader: Using default preloader
      preloader: Requested to use preloader class: null
      network: Connecting https://127.0.0.1/TestApp/html/test.jar with proxy=DIRECT
      network: Connecting http://127.0.0.1:443/ with proxy=DIRECT
      preloader: Skipped all (0) download events prior to null
      preloader: GrayBox: parent = sun.plugin2.main.client.PluginEmbeddedFrame[frame3,0,0,240x200,layout=java.awt.BorderLayout,title=,resizable,normal]
      network: Server https://127.0.0.1/TestApp/html/test.jar requesting to set-cookie with "JSESSIONID=F89857C222531FB7240EB592E3C51E59; Path=/TestApp/; Secure; HttpOnly"
      preloader: Delivering: DownloadEvent[type=load,loaded=2065, total=2065, percent=100]
      preloader: Start progressCheck thread
      basic: exception: null.
      java.lang.NullPointerException
      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$1000(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 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)
      Ignored exception: java.lang.NullPointerException

      REPRODUCIBILITY :
      This bug can be reproduced always.

      CUSTOMER SUBMITTED WORKAROUND :
      Run on IE once, and subsequently run on Firefox/Chrome (but trying explaining that to people)

            Unassigned Unassigned
            scfitch Stephen Fitch
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: