我必须在java(1.5)swing程序中使用一个设备。 问题是供应商不提供Java的API。 它们提供Visual C ++支持,python,JS,VBSCript API
不幸的是,即使在Windows平台上,JDK的脚本引擎和Rhino也不支持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
谢谢