如何从JavaFXWebView中的Firebug HTML调试中获得控制台输出?

如何从JavaFXWebView中的Firebug HTML调试中获得控制台输出?,java,javascript,webview,javafx,firebug-lite,Java,Javascript,Webview,Javafx,Firebug Lite,我正在使用Firebug lite调试JavaFX webview中的HTML元素。我正在使用下面的代码 engine.documentProperty().addListener(new ChangeListener<Document>() { @Override public void changed(ObservableValue<? extends Document> prop, Document oldDoc, Document newD

我正在使用Firebug lite调试JavaFX webview中的HTML元素。我正在使用下面的代码

engine.documentProperty().addListener(new ChangeListener<Document>() {
            @Override public void changed(ObservableValue<? extends Document> prop, Document oldDoc, Document newDoc) {
                enableFirebug(engine);
            }
        }); 
private static void enableFirebug(final WebEngine engine) {
        engine.executeScript("if (!document.getElementById('FirebugLite')){E = document['createElement' + 'NS'] && document.documentElement.namespaceURI;E = E ? document['createElement' + 'NS'](E, 'script') : document['createElement']('script');E['setAttribute']('id', 'FirebugLite');E['setAttribute']('src', 'https://getfirebug.com/' + 'firebug-lite.js' + '#startOpened');E['setAttribute']('FirebugLite', '4');(document['getElementsByTagName']('head')[0] || document['getElementsByTagName']('body')[0]).appendChild(E);E = new Image;E['setAttribute']('src', 'https://getfirebug.com/' + '#startOpened');}");

    }

我正在使用下面的代码获取元素ID。请告诉我哪里出了问题

你看过@ItachiUchiha了吗,谢谢你的链接。我正试图以同样的方式执行。但是,我在java控制台中没有得到任何输出。如果我能将其捕获到变量中,而不是在控制台上打印,那就太好了。我已经编辑了问题并添加了代码。请指出我的错误。
engine.getLoadWorker().stateProperty().addListener(new ChangeListener<State>() {
            @Override
            public void changed(ObservableValue<? extends State> observable,
                    State oldValue, State newValue) { 
                JSListener listener = new JSListener();

                JSObject jsobj = (JSObject) engine.executeScript("console.log = function(){"
                        + "var lastElement = null; "
                        + "document.addEventListener('click', function(e) {"
                        + "if (e.target != lastElement) {"
                        + "lastElement = e.target;"
                        + "java.log(lastElement.name);"
                        + "}}"
                        + ");"
                        +"}");                      
                jsobj.setMember("java", listener);  
            }
        });
public class JSListener { 

    public void log(String text) {
        System.out.println(text);
    } 
}