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

JSException on JSObject.getMember with long data

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P3 P3
    • None
    • 6u10
    • deploy
    • x86
    • windows_vista

      FULL PRODUCT VERSION :
      java version "1.6.0_10"
      Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
      Java HotSpot(TM) Client VM (build 11.0-b15, mixed mode, sharing)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Verze 6.0.6001]

      A DESCRIPTION OF THE PROBLEM :
      I have an applet for digitally signing documents in browsers. Documents are send from web server to hidden input in browser (Base64 encoded), applet then use JSObject getMember method for reading that data by this method:

      private String getFormInputValue(String inputName) {
             JSObject browserWindow = JSObject.getWindow(this);
             JSObject mainForm = (JSObject) browserWindow.eval("document.forms[0]");
             JSObject inputObject = (JSObject) mainForm.getMember(inputName);
             return (String) inputObject.getMember("value");
      }

      When document data is longer, JSException is thrown :

      netscape.javascript.JSException
      at sun.plugin2.main.client.MessagePassingJSObject.newJSException(Unknown Source)
      at sun.plugin2.main.client.MessagePassingJSObject.waitForReply(Unknown Source)
      at sun.plugin2.main.client.MessagePassingJSObject.doMemberOp(Unknown Source)
      at sun.plugin2.main.client.MessagePassingJSObject.getMember(Unknown Source)






      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Put longer data into form field (megabytes) and try to read them.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      getMember reads that data
      ACTUAL -
      exception is thrown

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      netscape.javascript.JSException
      at sun.plugin2.main.client.MessagePassingJSObject.newJSException(Unknown Source)
      at sun.plugin2.main.client.MessagePassingJSObject.waitForReply(Unknown Source)
      at sun.plugin2.main.client.MessagePassingJSObject.doMemberOp(Unknown Source)
      at sun.plugin2.main.client.MessagePassingJSObject.getMember(Unknown Source)
      at ASDSoft.DigitalSignature.DocumentSigner.getFormInputValue(DocumentSigner.java:376)
      at ASDSoft.DigitalSignature.DocumentSigner.signDocumentInternal(DocumentSigner.java:149)
      at ASDSoft.DigitalSignature.DocumentSigner.access$100(DocumentSigner.java:21)
      at ASDSoft.DigitalSignature.DocumentSigner$1.run(DocumentSigner.java:133)
      at java.security.AccessController.doPrivileged(Native Method)
      at ASDSoft.DigitalSignature.DocumentSigner.signDocument(DocumentSigner.java:128)
      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 sun.plugin.javascript.JSInvoke.invoke(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 sun.plugin.javascript.JSClassLoader.invoke(Unknown Source)
      at sun.plugin2.liveconnect.JavaClass$MethodInfo.invoke(Unknown Source)
      at sun.plugin2.liveconnect.JavaClass$MemberBundle.invoke(Unknown Source)
      at sun.plugin2.liveconnect.JavaClass.invoke0(Unknown Source)
      at sun.plugin2.liveconnect.JavaClass.invoke(Unknown Source)
      at sun.plugin2.main.client.LiveConnectSupport$PerAppletInfo$DefaultInvocationDelegate.invoke(Unknown Source)
      at sun.plugin2.main.client.LiveConnectSupport$PerAppletInfo$3.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at sun.plugin2.main.client.LiveConnectSupport$PerAppletInfo.doObjectOp(Unknown Source)
      at sun.plugin2.main.client.LiveConnectSupport$PerAppletInfo$LiveConnectWorker.run(Unknown Source)
      at java.lang.Thread.run(Unknown Source)
      Caused by: java.lang.InterruptedException
      at java.lang.Object.wait(Native Method)
      at sun.plugin2.message.Queue.waitForMessage(Unknown Source)
      at sun.plugin2.message.Pipe.receive(Unknown Source)
      ... 29 more
      Info: dataToSign=nullInfo: dataToSign=nullJVM heartbeat .. Exception, send ts: 6763455616, now ts: 6763455685, dT 69


      REPRODUCIBILITY :
      This bug can be reproduced always.

            kbr Kenneth Russell (Inactive)
            ndcosta Nelson Dcosta (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: