0

我必须在 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

谢谢

4

0 回答 0