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

NullPointerException at sun.plugin.viewer.context.IExplorerAppletContext.getJSOb

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P4 P4
    • None
    • 1.4.0, 1.4.1
    • deploy
    • x86
    • generic, windows_nt



      Name: gm110360 Date: 01/12/2003


      FULL PRODUCT VERSION :
      java version "1.4.1"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1-b21)
      Java HotSpot(TM) Client VM (build 1.4.1-b21, mixed mode)

      FULL OPERATING SYSTEM VERSION : Windows NT ver 4.0


      EXTRA RELEVANT SYSTEM CONFIGURATION :
      Latest plug-in installed. IE as default browser

      A DESCRIPTION OF THE PROBLEM :
      We are running an application that uses applets. We have
      used Java script to calculate some parameters and pass them
      to the applet. The applet used to load correctly in the
      previous version of Java Plug-In i.e. 1.4.0_01.

      The same applet does not load when we install the new plug-
      in i.e 1.4.1

      REGRESSION. Last worked in version 1.4

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      1. Create a sample applet that accepts params for height,
      width, alignment.
      2. In the JSP, use JavaScript to dynamically calculate the
      above params and pass the params to the applet.
      3. Run the JSP. It will not load.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      The expected results were to see the applet loaded and
      running on the IE screen.

      The actual result is a gray-screen with the error seen on
      the Java console.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      java.lang.NullPointerException

      at sun.plugin.viewer.context.IExplorerAppletContext.getJSObject(Unknown
      Source)

      at sun.plugin.AppletViewer.getDocumentBase(Unknown Source)

      at sun.plugin.AppletViewer.getCodeBase(Unknown Source)

      at sun.plugin.AppletViewer.appletInit(Unknown Source)

      at sun.plugin.viewer.LifeCycleManager.initAppletPanel(Unknown Source)

      at sun.plugin.viewer.IExplorerPluginObject$Initer.run(Unknown Source)

      netscape.javascript.JSException

      at netscape.javascript.JSObject.getWindow(Unknown Source)

      at com.mypkg.myappl.CPApplet.jbInit(CPApplet.java:45)

      at com.mypkg.myappl.CPApplet.init(CPApplet.java:36)

      at sun.applet.AppletPanel.run(Unknown Source)

      at java.lang.Thread.run(Unknown Source)



      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      The following code is of the JSP that hosts the applet. The applet code is not
      provided since it is easy to create a sample applet that will replicate the
      problem

      JSP Code
      ========

      <%@ page language="java" session="true" %>
      <% String sClassName = "com.mypkg.myappl.HomeCard";
        String serverScheme = request.getScheme();
        String serverName = request.getServerName();
        int serverPort = request.getServerPort();
        String contextPath = request.getContextPath();
        String finalUrl = serverScheme + "://" + serverName + ":" + serverPort +
      contextPath;
      %>
      <html>
      <head>
      <title> </title>
      </head>
      <script language="javascript">
      function SetCookie (name, value)
      {
        var expires = new Date();
        expires.setTime( expires.getTime() + (24 * 60 * 60 * 1000) * 180 ); // 6
      months from now
        var secure = false;
        document.cookie = name + "=" + escape (value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "");
      }

      function getCookie1(name) {
        var arg = name+"=";
        var alen = arg.length;
        var clen = document.cookie.length;
        var i = 0;
        while (i < clen) {
          var j = i + alen;
          if (document.cookie.substring(i, j) == arg)
            return getCookieVal (j);
          i = document.cookie.indexOf(" ", i) + 1;
          if (i == 0) break;
        }
        return null;
      }


      function getCookieVal (offset) {
        var endstr = document.cookie.indexOf (";", offset);
        if (endstr == -1)
          endstr = document.cookie.length;
        return unescape(document.cookie.substring(offset, endstr));
      }

      function setapplet()
      {
      var innerStr = "";
      var appheight = screen.availHeight / 1.305;
      var appwidth = screen.availWidth - 20;
      innerStr = "<applet codebase='<%=request.getContextPath() + "/classes/"%
      >'"
      +"code = 'com.mypkg.myappl.CPApplet.class'"
      +"archive = 'CP.jar'"
      +"name = 'CPApplet'"
      +"width = '"+appwidth+"'"
      +"height = '"+appheight+"'"
      +"hspace = '0'"
      +"vspace = '0'"
      +"align = 'middle' MAYSCRIPT>"
      +"<param name='serverUrl' value='<%=finalUrl
      + "/"%>'>"
      +"<param name='loadClass' value='<%=sClassName%
      >'>"
      +"<param name='homePageLinkText'
      value='LH.pdf'>"
      +"<param name='appletwidth' value="+appwidth+">"
      +"<param name='appletheight'
      value="+appheight+">"
                                      +"<param name='appletName' value='home'>"
      +"</applet>"
      document.getElementById("applettag").innerHTML = innerStr;
      }
      </script>
      <body topmargin="0" leftmargin="0" onload="javascript:setapplet();">
      <div id="applettag">
      </div>
      </body>

      </html>


      Note: The applet is a signed applet.
      ---------- END SOURCE ----------

      CUSTOMER WORKAROUND :
      Use the old plug-in
      (Review ID: 178955)
      ======================================================================

            zgu Zhengyu Gu
            gmanwanisunw Girish Manwani (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: