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

JnlpxArgs NullPointerException

    XMLWordPrintable

Details

    • b17
    • x86
    • windows_7

    Backports

      Description

        FULL PRODUCT VERSION :
        java version "1.8.0_11"
        Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
        Java HotSpot(TM) Client VM (build 25.11-b03, mixed mode)

        ADDITIONAL OS VERSION INFORMATION :
        Microsoft Windows [Version 6.1.7601]

        A DESCRIPTION OF THE PROBLEM :
        With the release of Java 7 update 65 and Java 8 update 11 a bug has been introduced into javaws on windows platforms which is causing our project's unchanged jnlp launch file to trigger the following error:

        java.lang.NullPointerException
        at com.sun.javaws.JnlpxArgs.execProgram(Unknown Source)
        at com.sun.javaws.Launcher.relaunch(Unknown Source)
        at com.sun.javaws.Launcher.prepareResources(Unknown Source)
        at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
        at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
        at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
        at com.sun.javaws.Launcher.launch(Unknown Source)
        at com.sun.javaws.Main.launchApp(Unknown Source)
        at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
        at com.sun.javaws.Main.access$000(Unknown Source)
        at com.sun.javaws.Main$1.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
        From java console:
        Cannot use secure launcher with main class: "-Dhttp.agent=IGB/8.1 (Webstart)"
        #### Java Web Start Error:
        #### null

        JNLP File Contents:

        <?xml version="1.0" encoding="utf-8"?>
        <jnlp spec="6.0+" version="8.1" codebase="http://bioviz.org/igb/releases/igb-8.1.1">
        <information>
        <title>IGB 8.1</title>
        <vendor>Genoviz Project</vendor>
        <homepage href="http://genoviz.sourceforge.net/" />
        <description>Integrated Genome Browser (8.1)</description>
        <icon href="igb.gif"/>
        <!-- <icon href="igb_splash.gif" kind="splash" />-->
        <offline-allowed/>
        <shortcut online="true">
        <desktop/>
        <menu submenu="IGB" />
        </shortcut>
        </information>
        <security>
        <all-permissions/>
        </security>
        <resources>
        <java version="1.6+" initial-heap-size="32m" max-heap-size="1024m"/>
        <jar href="igb_exe.jar" main="true" />
        <!-- jar href="igb-i18n.jar" / -->
        <property name="apple.laf.useScreenMenuBar" value="true" />
        <property name="http.agent" value="IGB/8.1 (Webstart)" />
        </resources>
        <application-desc main-class="com.affymetrix.main.Main" name="IGB">
        <argument>-prefs</argument>
        <argument>http://bioviz.org/igb/releases/igb-8.1.1/igb_prefs.xml&lt;/argument>
        <!-- Wildcard values inserted to allow modifications after signing -->
        <argument>-href</argument>
        <argument>*</argument>
        <argument>-scriptfile</argument>
        <argument>*</argument>
        </application-desc>
        </jnlp>

        Please note the removal of the http.agent property resolves the NPE, but this is a valid property which has been a part of the project's launch file for years.



        REGRESSION. Last worked in version 8u5

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

        STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
        Unfortunately, I have been unable to create a small toy demo example of this bug and cannot yet separate the bug from the context of our project; however, it is very easy for anyone to confirm this bug using the following steps.

        1. Launch the following JNLP file (http://bioviz.org/igb/releases/igb-8.1.9/igb.jnlp) using 1.8.0_5 and note there are no problems.
        2. Launch the same file using 1.8.0_11 or 1.7.0_65
        3. Note the error message and stacktrace
        4. Enable console logging to see the additional error message cited above (i.e. Cannot use secure launcher with main class: "-Dhttp.agent=IGB/8.1 (Webstart)" )

        EXPECTED VERSUS ACTUAL BEHAVIOR :
        EXPECTED -
        Result should be a successful launch of our open source genome browsing software.

        ERROR MESSAGES/STACK TRACES THAT OCCUR :
        java.lang.NullPointerException
        at com.sun.javaws.JnlpxArgs.execProgram(Unknown Source)
        at com.sun.javaws.Launcher.relaunch(Unknown Source)
        at com.sun.javaws.Launcher.prepareResources(Unknown Source)
        at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
        at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
        at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
        at com.sun.javaws.Launcher.launch(Unknown Source)
        at com.sun.javaws.Main.launchApp(Unknown Source)
        at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
        at com.sun.javaws.Main.access$000(Unknown Source)
        at com.sun.javaws.Main$1.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)


        From java console:
        Cannot use secure launcher with main class: "-Dhttp.agent=IGB/8.1 (Webstart)"
        #### Java Web Start Error:
        #### null

        REPRODUCIBILITY :
        This bug can be reproduced always.

        Attachments

          Issue Links

            Activity

              People

                vdrozdov Victor Drozdov (Inactive)
                webbuggrp Webbug Group
                Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: