Java FX liveconnect - 从FX应用程序调用javascript函数

时间:2013-07-08 04:46:47

标签: java javascript applet javafx-2 liveconnect

我遇到了问题,我需要从Java FX应用程序到浏览器进行通信。在此之前,我发现信息为:

var jsObject = netscape.javascript.JSObject.getWindow(applet);
jsObject.call("show_alert", []);

有了这个我可以访问JavaScript功能。但是我的Java FX应用程序不是applet(没有实现JApplet)。 那么我可以将其作为getWindow()的输入。

有任何建议吗?

1 个答案:

答案 0 :(得分:0)

阅读评论时,目前还不清楚您是否在Web浏览器页面中嵌入了JavaFX代码(换句话说是applet),或者是其他配置。但是,您应该首先使用以下内容。

JSObject jsWin = getHostServices().getWebContext();
if (jsWin != null) {
    jsWin.eval("show_alert();");
}

如果这不起作用,那么请评论哪些不起作用以及具体的运行时配置是什么。

getHostServices()是JavaFX Application上的一个方法,记录为herehere