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

Webstart application not fully loaded on Mozilla with java versions after 8u5

    Details

    • Subcomponent:
    • CPU:
      x86_64
    • OS:
      windows_7

      Description

      FULL PRODUCT VERSION :
      java version "1.8.0_40"
      Java(TM) SE Runtime Environment (build 1.8.0_40-b25)
      Java HotSpot(TM) Client VM (build 25.40-b25, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      - Microsoft Windows [Version 6.1.7601]
      Windows 7 64-bit

      - Web Start application server :
      Linux <server name> 2.6.18-308.el5 #1 SMP Fri Jan 27 17:17:51 EST 2012 x86_64 x86_64 x86_64 GNU/Linux



      EXTRA RELEVANT SYSTEM CONFIGURATION :
      Firefox 36.0.1, also tested on older versions of firefox.

      A DESCRIPTION OF THE PROBLEM :
      Our web start application is working with Explorer and Chrome browsers but not working on Mozilla Firefox. Application window is started but values from database are not loaded. We get exceptions described in Error Message(s)/ Crash Logs

      So we tried older Moziilla versions but that didn't helped. We tried to investigate our application's code but it looks like there is nothing we can do to fix issue.

      Web start application problem with Mozilla is present on java 7u65 32-bit, older version of java 7 are working great and there are no exceptions. Also for java 8 problem is present starting from java 8u11 32-bit, older java 8 versions are working ok.

      The problem starts in code line which calls URL tmpUrl = getClass().getResource(extractFilename);
      For the same input value 'extractFilename' :
      For Mozila result is 'file:/C:/Users/SomeUser/AppData/Local/Temp/OvEmbWebBrowser27.dll'
      For Chrome, Explorer is 'jar:http://ServerName:8081/folder/something_addon.jar!/OvEmbWebBrowser27.dll&#39;

      File "C:/Users/SomeUser/AppData/Local/Temp/OvEmbWebBrowser27.dll" exists but exception is thrown.

      Strange thing is that this result for Mozilla is not the same for java 8u5 and java 8u11. Why this happens from java 8u11 and java 7u65?
      This might be maybe j2launcher.exe issue.


      REGRESSION. Last worked in version 8u5

      ADDITIONAL REGRESSION INFORMATION:
      java version "1.8.0_40"
      Java(TM) SE Runtime Environment (build 1.8.0_40-b25)
      Java HotSpot(TM) Client VM (build 25.40-b25, mixed mode)

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Use latest Mozila browser and jdk java 8u11 or newer version.
      Some example with usage of
      getClass().getResource(...); in web applet code and compare results of getClass().getResource on Mozilla and Chrome or Explorer.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Results of getClass().getResource should be the same for Mozilla and other browsers if we use the same server and web start application call.

      For this problem correct behaviour is with java 8u5 and 7u60 or older.

      ACTUAL -
      On Mozilla we are getting different result from getClass().getResource(...) than returned result on Chrome, Explorer.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Unexpected Exception while executing a runnable on Event Dispatch thread: java.lang.reflect.InvocationTargetException
      Dumping stack trace:

      java.lang.reflect.InvocationTargetException
      at java.awt.EventQueue.invokeAndWait(Unknown Source)
      at java.awt.EventQueue.invokeAndWait(Unknown Source)
      at javax.swing.SwingUtilities.invokeAndWait(Unknown Source)
      ...
      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 com.sun.javaws.Launcher.executeApplication(Unknown Source)
      at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
      at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
      at com.sun.javaws.Launcher.run(Unknown Source)
      at java.lang.Thread.run(Unknown Source)
      Caused by: java.lang.UnsatisfiedLinkError: ************************************************
      ...
      at javax.swing.JTabbedPane.fireStateChanged(Unknown Source)
      at javax.swing.JTabbedPane$ModelListener.stateChanged(Unknown Source)
      at javax.swing.DefaultSingleSelectionModel.fireStateChanged(Unknown Source)
      at javax.swing.DefaultSingleSelectionModel.setSelectedIndex(Unknown Source)
      at javax.swing.JTabbedPane.setSelectedIndexImpl(Unknown Source)
      at javax.swing.JTabbedPane.setSelectedIndex(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$1.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at ...
      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)

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      Sorry but because of customer, we are not able to provide code.
      But we discovered that getClass().getResource(...) has different behavior on 32-bit java 8u5 and java 8u11. It should be checked code difference between those two versions and change related to web start.
      ---------- END SOURCE ----------

      CUSTOMER SUBMITTED WORKAROUND :
      Webstart application is working on Mozila on all 64-bit java versions.
      But we need them to work with 32-bit versions.

      Temporary method for bypassing this bug is to install java 7u60 or older or java 8u5 or older.

        Attachments

        1. CustomResource.java
          0.4 kB
        2. JnlpTest.java
          0.7 kB
        3. resource.txt
          0.0 kB

          Activity

            People

            • Assignee:
              stayer Kirill Kirichenko (Inactive)
              Reporter:
              webbuggrp Webbug Group
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: