无法使用Liveconnect将Java加载到Firefox 16扩展中
在Firefox 16中,根据,不再可以使用全局实例访问java 我已经构建了一个定制的selenium-ide.xpi(http://seleniumhq.org/download/)它加载java并通过我的自定义框架运行。为了访问java,我添加了一个addJava.js文件,该文件包含在selenium-ide-common.xul文件中,使用类似于在中找到的东西调用java,但是这不再有效 我尝试了以下方法来解决此问题: 将以下内容添加到各种.xul文件中,但每次尝试以下内容时,我都会发现appletRef为null:无法使用Liveconnect将Java加载到Firefox 16扩展中,java,firefox,Java,Firefox,在Firefox 16中,根据,不再可以使用全局实例访问java 我已经构建了一个定制的selenium-ide.xpi(http://seleniumhq.org/download/)它加载java并通过我的自定义框架运行。为了访问java,我添加了一个addJava.js文件,该文件包含在selenium-ide-common.xul文件中,使用类似于在中找到的东西调用java,但是这不再有效 我尝试了以下方法来解决此问题: 将以下内容添加到各种.xul文件中,但每次尝试以下内容时,我都会发
<div name="appletDiv">
<embed id ="cipherDocsApplet" type="application/x-java-applet;version=1.6" code="java.applet.Applet" pluginspage="http://java.com/download/" MAYSCRIPT="true" width="0" height="0" />
</div>
var appletRef = document.getElementById("cipherDocsApplet");
window.java = appletRef.Packages.java;
最后我尝试了,将app元素添加到我的主xul文件中,稍后再获取它,但这也给了我同样的错误:“TypetError:app.Packages未定义。”
有人知道如何解决这个问题吗
提前感谢,,
詹姆斯我觉得你做这件事很难。使用WebDriver(Selenium2框架的一部分),您可以通过加载自定义Firefox配置文件来动态加载Java.xpi扩展 例如:
File file = new File("firebug-1.8.1.xpi");
FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.addExtension(file);
firefoxProfile.setPreference("extensions.firebug.currentVersion", "1.8.1");
WebDriver driver = new FirefoxDriver(firefoxProfile);
你的想法并不典型,因此我怀疑很多人能否回答你的问题
另外,如果Firefox的更高版本禁用了“LiveConnect”功能,那么您有什么理由试图通过javascript注入强制不受支持的浏览器支持该功能
File file = new File("firebug-1.8.1.xpi");
FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.addExtension(file);
firefoxProfile.setPreference("extensions.firebug.currentVersion", "1.8.1");
WebDriver driver = new FirefoxDriver(firefoxProfile);