Java 从J2EE服务器访问COM接口的最佳方式是什么?
像j-Integra、com4j和Jacob等可用的javacom网桥是否适合在J2EE容器中使用?哪一个最适合这个用途?我需要评估JVM崩溃、本机内存泄漏和非托管线程创建(因为在使用线程池的J2EE容器中不建议这样做)的风险,以评估当前可用的Java COM桥。我使用了您提到的那些桥。我会选择一个非常不同的方法,因为你说的事情:崩溃,内存泄漏,还有很多其他的东西 我会有一个小的Windows服务器,使用COM组件,因为它是它的原生环境。在这个小小的Windows服务器中,您可以公开一些HTTP接口(WEB请求),您可以在JavaEE服务器中使用这些接口通过Windows服务器访问COM组件。Windows服务器可以是ASP.NET服务器的IIS,或者是一个定制程序,它可以用C语言编写,C++,C,VB,net。Java 从J2EE服务器访问COM接口的最佳方式是什么?,java,com,jakarta-ee,com-interop,Java,Com,Jakarta Ee,Com Interop,像j-Integra、com4j和Jacob等可用的javacom网桥是否适合在J2EE容器中使用?哪一个最适合这个用途?我需要评估JVM崩溃、本机内存泄漏和非托管线程创建(因为在使用线程池的J2EE容器中不建议这样做)的风险,以评估当前可用的Java COM桥。我使用了您提到的那些桥。我会选择一个非常不同的方法,因为你说的事情:崩溃,内存泄漏,还有很多其他的东西 我会有一个小的Windows服务器,使用COM组件,因为它是它的原生环境。在这个小小的Windows服务器中,您可以公开一些HTTP
在我看来,这是你最安全的选择。当您进入生产模式时,它将为您省去很多麻烦。您需要使用JAVA-COM桥接器的原因之一是您需要一些基于Windows的功能,而这些功能在基于Unix的系统中是不可用的。几年前,Unix上没有MS WORD,EXCEL JAVA API可用。因此,如果可能,尝试使用本机JavaAPI来实现基于Windows的功能。比如使用ApachePOI。在具有高安全性设置的机器上设置J-Integra非常棘手,需要特别注意。这是一种非常有趣的方法。IIS上的Web服务可以安全地将COM接口封装到J2EE服务器。与其他Java COM桥接器相比,它似乎更适合在J2EE服务器上使用。如果它解决了您的问题,您甚至可以自由地接受它。@Adam:我发布了一条评论而不是答案,因为我还不确定j-Interop是否可以被视为“J2EE友好”。在我的测试中,我发现j-Interop启动了非托管子线程。这不适合在具有由线程池管理的线程的J2EE服务器中使用。