如何解决JavaFX中的浏览器崩溃问题?

时间:2015-06-05 06:10:25

标签: java javascript webview javafx java-7

我有一个文本字段,我需要提供Xpath并单击提交按钮。它必须突出显示下面webview中的相应元素(假设网站已加载)。这是我的代码。

webEngine.executeScript(
                                "var elems = document.body.getElementsByTagName(\"*\");"+
                                "for (i = 0; i < elems.length; i++) {"+
                                "elems[i].style.backgroundColor = \"\";"+
                                "}"+
                                "var element = document.evaluate( bridge.getXpath() ,document.body, null, XPathResult.ANY_UNORDERED_NODE_TYPE, null).singleNodeValue;"+
                                "clickController.printId(element, bridge.getXpath());"+
                                "if (element != null) {"+
                                "element.style.backgroundColor = \"#FDFF47\";"+
                        "}");

document.evaluate()方法计算给定的xPath表达式(bridge.getXpath()返回xPath值)。如果我给出正确的Xpath值,它将正确突出显示该元素。 但是,如果Xpath不正确,则JavaFX浏览器崩溃。在UI中,“Java SE已停止工作”弹出窗口将出现并要求我关闭该程序。在后端控制台中,我收到“发生了不可恢复的堆栈溢出。”

有没有人遇到过这个问题?请分享想法。

编辑: 刚发现问题出在JDK1.7上。在JDK1.8中,它可以正常工作。 1.7中是否有解决方法?

0 个答案:

没有答案