我需要进行 docx 操作(查找/替换占位符以及选中/取消选中复选框)。由于 ColdFusion 10 与 Java 集成得很好,我决定尝试使用 Java 库 docx4j,它基本上模仿了 OpenXML SDK(.net 平台)。
我在自定义文件夹中有 docx4j JAR,我通过 JavaSettings 在我的 Application.cfc 中设置了该文件夹(CF10 中的新增功能,我尝试使用其他 JARS 并且它有效):
<cfcomponent output="false">
<cfset this.javaSettings =
{LoadPaths = ["/myJava/lib"], loadColdFusionClassPath = true, reloadOnChange= true,
watchInterval = 100, watchExtensions = "jar,class,xml"} />
</cfcomponent>
现在,我尝试使用这个示例:https://github.com/plutext/docx4j/blob/master/src/main/java/org/docx4j/samples/VariableReplace.java https://github.com/plutext/docx4j/blob/master/src/main/java/org/docx4j/samples/VariableReplace.java
但尝试调用 WordprocessingMLPackage 函数失败创建对象()说特定的类不存在:
<cfset docObj = createObject("java","org.docx4j.openpackaging.packages.WordprocessingMLPackage") />
有任何想法吗?我并不是一个真正的 Java 爱好者,但是用于 docx 操作的选项并不多。