Error calling javascript method from applet

I am trying to call a javascript method from an applet using netscapte.java.JSObject.

in the applet:

JSObject window = JSObject.getWindow(this.Class); 
Object[] args = ....  //arguments 
window.call("javascriptMethodName", args); 

But I get an exception in window.call:

JavaScript error while calling "callFromJava"
netscape.javascript.JSException: JavaScript error while calling "callFromJava"
    at sun.plugin2.main.client.MessagePassingJSObject.newJSException (Unknown Source)
    at sun.plugin2.main.client.MessagePassingJSObject.waitForReply (Unknown Source)
    at sun.plugin2.main.client.MessagePassingJSObject.call (Unknown Source)
    at TextBoxApplet.jButton1_actionPerformed (TextBoxApplet.java:57)
    at TextBoxApplet.access $ 000 (TextBoxApplet.java:16)
    at TextBoxApplet $ 1.actionPerformed (TextBoxApplet.java:36)
    at javax.swing.AbstractButton.fireActionPerformed (Unknown Source)
    at javax.swing.AbstractButton $ Handler.actionPerformed (Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed (Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed (Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased (Unknown Source)
    at java.awt.Component.processMouseEvent (Unknown Source)
    at javax.swing.JComponent.processMouseEvent (Unknown Source)
    at java.awt.Component.processEvent (Unknown Source)
    at java.awt.Container.processEvent (Unknown Source)
    at java.awt.Component.dispatchEventImpl (Unknown Source)
    at java.awt.Container.dispatchEventImpl (Unknown Source)
    at java.awt.Component.dispatchEvent (Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent (Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent (Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent (Unknown Source)
    at java.awt.Container.dispatchEventImpl (Unknown Source)
    at java.awt.Component.dispatchEvent (Unknown Source)
    at java.awt.EventQueue.dispatchEvent (Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters (Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter (Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy (Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents (Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents (Unknown Source)
    at java.awt.EventDispatchThread.run (Unknown Source)

JSObjectNOT null. Has anyone come across this? Many thanks.

+3
source share
2 answers

, musicfreak.

:

public class MyClass extends JApplet {
    public void init() {
        JSObject window = JSObject.getWindow(this); 
        Object[] args = new String[] { "bar" }; 
        window.call("foo", args); 
    }
}

( JavaScript - baz bar, ):

<html>
  <head>
    <title>MyAppletTest</title>
  </head>
  <body>
    <script type="text/javascript">
      function foo(bar) { bar.baz(); }
    </script>
    <applet code="MyApplet.class"></applet>
  </body>
</html>

:

netscape.javascript.JSException: JavaScript error while calling "foo"
    at sun.plugin2.main.client.MessagePassingJSObject.newJSException(Unknown Source)
    at sun.plugin2.main.client.MessagePassingJSObject.waitForReply(Unknown Source)
    at sun.plugin2.main.client.MessagePassingJSObject.call(Unknown Source)
    at MyApplet.init(MyApplet.java:13)

JavaScript, bar.baz() alert(bar), , .

, JavaScript, , , .

+2

, JavaScript, . JavaScript, - ( ) . , MAYSCRIPT HTML.

19.5 , JavaScript . , HTML HTML-, :

MAYSCRIPT, JavaScript.

http://docstore.mik.ua/orelly/web/jscript/ch19_06.html

-1

Source: https://habr.com/ru/post/1750421/


All Articles