Webview html在Nashorn中主持通信

时间:2015-10-22 19:30:29

标签: javascript java nashorn

我试图围绕在Nashorn的webview中的HTML页面和主机nashorn应用程序之间建立通信。我读了这个教程 here

但我似乎无法获得如何创建一个回调,我可以在HTML页面内调用它来在主机中运行某些东西。包装功能工作正常我只是不知道从这里去哪里获取webview html来主持通信。无论我怎么做,我得到一个空对象,但没有方法。

This.engine.loadWorker.stateProperty().addListener(new ChangeListener() {
changed: function(value, oldState, newState) {
  if (newState == Worker.State.SUCCEEDED) {
    function testObj(){
      this.foo = function(){
        print('hello');
      }
    }
    This.document = wrap(This.engine.executeScript("document"));
    This.window = wrap(This.engine.executeScript("window"));

我试过

This.window.setMember('HOST',new testObj());

This.window.setMember('HOST',wrap(new testObj()));

两个人都没有在窗口中找到任何东西

This.window.executeScript("window").setMember('HOST',new testObj());

在HTML页面javascript" {}"

中获取一个空对象

0 个答案:

没有答案