我们希望允许从 Excel 访问我们的一些 EJB。目标是提供可通过 VBA 使用的 API。

我们的 EJB 大多是无状态会话 Bean,它们使用 POJO 执行简单的 CRUD 操作。

一些可能的解决方案:

  • 将 EJB 作为 Web 服务公开并创建一个包装它们的 VB/C# dll,
  • 使用 Corba 从 C# 访问 EJB,
  • 创建一个使用 Java 访问 EJB 的 COM 库,

欢迎指出这些解决方案的框架或其他想法。

有帮助吗?

解决方案

你可以看一下 IIOP.NET, ,它解决了这个问题。

其他提示

如果您有一个相当新的 ejb 容器,最便宜和最简单的方法应该是将您的 bean 公开为 Web 服务并从 VB/C# 调用它。这不需要任何额外的工具或库。

我从事一个名为的开源项目 XL循环 - 该框架允许您将 POJO 函数公开为 Excel 函数。

它包括:

  1. Excel 加载项 (XLL),通过 TCP 与以下对象进行通信:
  2. 一个 Java 服务器/库,调用 java 方法。

您可以将此 java 函数服务器嵌入到 EJB 中,并将其部署为应用程序服务器的一部分。

回到 VB6/COM/DCOM 时代,我们使用了该套件 J-Integra 来完成这个任务。不过我对 .NET 版本没有经验。

我强烈推荐 IKVM. 。它是一个 java 字节码到 .NET 汇编编译器(即JAR --> DLL),我用它在 Excel 自动化服务器中创建实时 JMX 链接和侦听器。创建 EJB 客户端存根和支持库的 .NET 程序集对您来说应该不难。

//尼古拉斯

你可以尝试 奥巴 (我从事这个项目):

Obba 是电子表格应用程序的 Java 对象处理程序。

它提供了电子表格和 Java 类之间的桥梁,使得电子表格可以用作 Java 库的图形用户界面。从电子表格访问 Java 库不需要粘合代码(不需要 VBA,不需要特殊的 Java 代码)。对象由其原始构造函数实例化。使用“按名称”反射来调用构造函数和方法。不需要特定于电子表格的工厂方法。Obba 提供了处理电子表格中对象的函数。

提供插件的 Java 虚拟机可以在同一计算机或远程计算机上运行 - 无需对电子表格进行任何更改,即电子表格中引用的对象可以驻留在远程 Java 虚拟机上。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top