【发布时间】:2016-01-19 20:28:00
【问题描述】:
我目前在 Windows 2012 上运行带有 Java JRE 1.8.66 64 位的 ColdFusion 11 64 位安装。我想安装 Open Office 以及 JODConverter Java 库,以便我可以使用这些库来转换 Office 文件到带有代码的 PDF。我已经在带有 ColdFusion 8 32 位的 Windows 2003 32 位中成功运行了这个安装。我也成功地在 Windows 7 中使用 ColdFusion 8 和 64 位 JRE。
在 CF11/2012 服务器上,我安装了 Open Office 3.4.1,但它只允许安装 32 位。我认为 32 位/64 位差异会导致问题,因为每次我尝试实例化 Java 库时,它都会引发“对象实例化异常”:
堆栈跟踪:
Message: org.artofsolving.jodconverter.office.DefaultOfficeManagerConfiguration
StackTrace: java.lang.ClassNotFoundException: org.artofsolving.jodconverter.office.DefaultOfficeManagerConfiguration
at coldfusion.bootstrap.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:235)
at java.lang.ClassLoader.loadClass(Unknown Source)
at coldfusion.runtime.java.JavaProxyFactory$1.run(JavaProxyFactory.java:156)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.runtime.java.JavaProxyFactory.getProxy(JavaProxyFactory.java:151)
at coldfusion.runtime.ProxyFactory.getProxy(ProxyFactory.java:65)
at coldfusion.runtime.CFPage.createObjectProxy(CFPage.java:6167)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:6130)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:6064)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:6039)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:5986)
有什么方法可以让这种集成正常工作吗?
【问题讨论】:
-
您是否看到有关使用 ColdFusion 11 配置 OpenOffice 的文档? Installing Integrated Technologies 底部有一个配置 OpenOffice 部分查看它们包含在 Windows 服务器的类路径和库路径中的 JAR 文件。如果这仍然没有让您通过实例化问题,那么看起来他们还可以选择远程运行 OpenOffice,如果它确实是一个位问题(也在链接文档中提到)。
-
您不能在 Windows 上混合搭配 32 位和 64 位 Java; WoW64 子系统无法与 WoW32 交互。
-
@Miguel-F,是的,我读到了,但是,它并没有真正告诉我任何我不知道的事情。我想我现在需要将 ColdFusion 重新安装为 32 位。不知道有没有什么技巧可以让它发挥作用。
-
您可以在同一个 Windows 桌面上安装 32 位和 64 位 JVM,只要它们安装到不同的文件夹即可。为什么 Windows 2012 不是这种情况?你有没有尝试过?如果可以,只需将 Open Office 配置为指向 32 位 JVM。
-
你可以试试 LibreOffice 5 的 64 位版本,看看它是否足够稳定。
标签: java coldfusion openoffice.org