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

IE browser doesn't refresh when invoking a method in Applet via Javascript

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P3 P3
    • 6
    • 5.0
    • deploy
    • x86
    • windows_xp

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


      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows XP [Version 5.1.2600]
      Microsoft Windows 2000
      Microsoft Windows ME

      A DESCRIPTION OF THE PROBLEM :
      When invoking a "long wait" method (say which will last for 30 seconds) of an Applet within IE browser using Javascript, the invoking browser will hang (not refreshing) until the method returns. This problem only happens in IE browsers (version 5.5 up) with Java-plugin JRE1.5.
      This will not happen when using Mozilla/Netscape with JRE 1.4 / 1.5
      This will not happen when using IE with JRE 1.4

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      -Install JRE 5.0 on any Windows platform PC (WinXP, W2K / WinME).
      -invoke IE browser
      -open the test HTML page
      -Click on the link "Start Sleep"
      -try to drag the browser, move the browser, move another application window over the browser ...


      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      The invoking browsers should be responding.
      ACTUAL -
      The invoking browsers is not responding. ie. The contents of the browser / the browser itself cannot be refreshed when trying to drag/move the browser.

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------

      /* RefreshTest.java
       * Created on June 2, 2005, 10:35 AM
       */
      package test;
      public class RefreshTest extends java.applet.Applet {
      int sleepTime=0;
      public void init() {
      sleepTime = Integer.parseInt(this.getParameter("SLEEP"));
      }
      public void start() {}
      public void stop() {}
      public void destroy() {}
      public String startsleep() {
      System.out.println("Will sleep for "+sleepTime+" msec now ...");
      try { Thread.sleep(sleepTime); } catch (Exception e) {}
      return ""+sleepTime;
      }
      }
      /* RefreshTest.java End */


      <!-- Sample HTML -->
      <HTML>
      <OBJECT
      classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
      codebase = "https://java.sun.com/products/plugin/autodl/jinstall-1_4_0-windows-i586.cab#Version=1,4,0,0"
      Name = "refreshTest"
      WIDTH = "0" HEIGHT = "0" >
      <PARAM NAME = CODE VALUE = "test.RefreshTest" >
      <PARAM NAME = NAME VALUE = "refreshTest" >
      <PARAM NAME = ARCHIVE VALUE = "RefreshTest.jar" >
      <PARAM NAME = MAYSCRIPT VALUE=true>
      <PARAM NAME = "type" VALUE = "application/x-java-applet;version=1.4">
      <PARAM NAME = "scriptable" VALUE = "false">
      <PARAM NAME = "SLEEP" VALUE = "30000">

      <COMMENT>
      <EMBED
      type = "application/x-java-applet;version=1.4" CODE = "test.RefreshTest" ARCHIVE = "RefreshTest.jar" NAME = "refreshTest" WIDTH = "0" HEIGHT = "0" MAYSCRIPT = "true" scriptable = "false" pluginspage = "https://java.sun.com/products/plugin/index.html#download">
      <NOEMBED>
      alt="Your browser understands the &lt;APPLET&gt; tag but isn't running the applet, for some reason."
      Your browser is completely ignoring the &lt;APPLET&gt; tag!
      </NOEMBED>
      <PARAM NAME = "SLEEP" VALUE = "30000">
      </EMBED>
      </COMMENT>
      </OBJECT>
      <script language="Javascript">
      function startTest() {
      if (navigator.appName.indexOf ("Microsoft") != -1) {
      document.ResultsForm.testResults.value = refreshTest.startsleep();
      } else {
      document.ResultsForm.testResults.value = document.embeds["refreshTest"].startsleep();
      }
      document.ResultsForm.submit();
      }
      </script>
      <BODY>
      <table>
      <tr><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
      <tr><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
      <tr><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
      <tr><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
      </table>
      <A HREF="javascript:startTest();">Start Sleep</A>
      <FORM name="ResultsForm" method="Get" action="RefreshTest.html">
      <INPUT TYPE="hidden" name="testResults" value="">
      </FORM>
      </BODY>
      </HTML>
       
      ---------- END SOURCE ----------
      ###@###.### 2005-06-07 18:42:33 GMT

            mleisunw Mike Lei (Inactive)
            gmanwanisunw Girish Manwani (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: