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

Applet hangs on network response in JPI 1.3.1 beta and NS 4.7

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 1.4.0
    • 1.3.0
    • deploy
    • beta
    • x86
    • windows_98



      Name: yyT116575 Date: 02/20/2001


      C:\WINDOWS>java -version
      java version "1.3.1-beta"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-beta-b15)
      Java HotSpot(TM) Client VM (build 1.3.1beta-b15, mixed mode)

      This bug has already been submitted for JPI 1.3.0_01. I have retested with
      JPI 1.3.1 and the problem persists:

      This problem only occurs with Netscape 4.7 on Windows 98 (version 4.10.1998)
      I didn't test on Windows 95/ME.

      My applet is sending back and forth serializable objects with Tomcat 3.2 over
      Apache 1.3.9. In non-consistent cases (but very often) the applet just hangs
      while waiting for the response (I can see in my server log that the request has
      been processed on the server).
      I tried with a dial-up connection and a Ethernet connection and the results
      have been the same. However, with the modem I can see that the data has been
      received (light flashing on the modem itself) but the modem indicator in Win98
      doesn't show the incoming bytes.
      If I click on any icon in the taskbar or even if I just move my mouse over a
      DOS prompt (doesn't work for calculator ;), the modem indicator starts to
      change and the applet works well again.

      It works fine with JPI 1.3.0. This bug has been introduced in 1.3.0_01. Most of
      our clients use Win98 so this is very critical and we need 1.3.0_01 because
      another major bug has been fixed (Bug 4351860) in this version.

      Here is the code I use to send and receive request in the applet:

         URL url = new URL(myApplet.getCodeBase(), "/myservlet");
         URLConnection con = url.openConnection();

         contentType = obj.getClass().getName();
         con.setDoInput(true);
         con.setDoOutput(true);
         con.setUseCaches(false);
         //Set the content type to be java-internal/classname
         con.setRequestProperty("Content-Type", "java-internal/" + contentType);
         //Write the serialized object as post data
         ObjectOutputStream out = new ObjectOutputStream(con.getOutputStream());
         out.writeObject(obj);
         out.flush();

         InputStream is = con.getInputStream();
         ObjectInputStream ois = new ObjectInputStream(is);
         Object result = ois.readObject();
      (Review ID: 117349)
      ======================================================================

            stanleyh Stanley Ho (Inactive)
            yyoungsunw Yung-ching Young (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: