我必须在 java (1.5) swing 程序中使用设备。问题是供应商不提供 Java 的 API。它们提供 Visual C++ 支持、python、JS、VBSCript API
遗憾的是,JDK 的脚本引擎和 Rhino 甚至在 windows 平台上都不支持 activex。
运行这个简单的代码时
public static void main(String[] args) {
ScriptEngine runtime = null;
try {
runtime = new ScriptEngineManager().getEngineByName("javascript");
Object o = runtime.eval( new FileReader( "something.js" ) );
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
我收到一个错误,例如
sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "ActiveXObject"
我理解为“不支持activex”(如果我错了,请纠正我)
是否有任何我可以在 java 中使用的兼容 activex 的 javascript 解释器?
我正在评估的一个选项是使用 Jacob 控制 Java 中的 IE。使那个 IE 不可见并执行一些利用 activeX 的 JS 脚本来显示结果。然后....以某种方式从页面正文中获取数据。
如果有人已经这样做了,请告诉我它是否有效:) 我对这个选项的未来性感到困惑
我的环境是 windows7、IE8、java5、eclipse
谢谢