ActiveX 到 Enterprise JavaBeans (EJB) 网桥
WebSphere® Application Server 提供了 ActiveX 到 EJB 网桥,使 ActiveX 程序能够通过一组 ActiveX 自动化对象来访问企业 Bean。
网桥通过将 Java™ 虚拟机 (JVM) 装入任何 ActiveX 自动化容器 (例如 Visual Basic , VBScript 和 Active Server Pages (ASP)) 来完成此访问。
- 客户机应用程序(例如 Visual Basic 和 VBScript)是用户从命令行、桌面图标或“开始”菜单快捷方式启动的程序。
- 客户机服务(例如 Active Server Page)是通过某些自动方法(如服务控制面板 applet)启动的程序。
ActiveX 到 EJB 网桥使用 Java 本机接口 (JNI) 体系结构以编程方式访问 JVM 代码。 因此, JVM 代码与 ActiveX 应用程序 (Visual Basic , VBScript 或 ASP) 存在于同一进程空间中,并保持连接到该进程,直到该进程终止为止。 要创建 JVM 代码,ActiveX 客户机程序将调用 XJB.JClassFactory 对象的 XJBInit() 方法。
在 ActiveX 客户机程序初始化 JVM 代码之后,该程序将调用多种方法来为 Java 类创建代理对象。 访问 Java 类或对象时, JVM 代码中存在真实的 Java 对象; 自动化容器包含该 Java 对象的代理。 ActiveX 程序可使用代理对象来访问 Java 类、对象字段和方法。
要转换基本数据类型,客户机程序使用 COM IDispatch 接口(不支持直接使用 IUnknown 接口)。 基本数据类型在本机自动化类型与 Java 类型之间自动转换。 所有其他类型由代理对象自动处理。
Java 代码中抛出的任何异常都将封装并作为 COM 错误再次抛出, ActiveX 程序可以从中确定实际的 Java 异常。
ActiveX 到 EJB 网桥支持自由线程访问和单元线程访问,并实现自由线程聚集器 (FTM) 以在混合环境(如 Active Server Page)中工作。
有关使用 ActiveX 到 EJB 网桥进行 ActiveX 客户机编程的更多信息,请参阅开发 ActiveX 客户机应用程序代码主题。