在AEM Forms中使用Forms服务呈现交互式PDF
最近更新: 2025年5月5日
- 适用对象:
- Experience Manager 6.4
- Experience Manager 6.5
创建对象:
- 中级
- 开发人员
在AEM Forms中使用Forms服务API呈现交互式PDF
在本文中,我们将介绍以下服务
- FormsService — 这是一项功能非常广泛的服务,允许您从PDF文件中导出/导入数据,并通过将xml数据合并到xdp模板中来生成交互式pdf
此处列出了适用于AEM Forms API的官方javadoc
以下代码段使用FormsService的renderPDFForm操作渲染交互式pdf。 schengen.xdp是用于合并xml数据的模板。
String uri = "crx:///content/dam/formsanddocuments";
PDFFormRenderOptions renderOptions = new PDFFormRenderOptions();
renderOptions.setAcrobatVersion(AcrobatVersion.Acrobat_11);
renderOptions.setContentRoot(uri);
Document interactivePDF = null;
try {
interactivePDF = formsService.renderPDFForm("schengen.xdp", xmlData, renderOptions);
} catch (FormsServiceException e) {
e.printStackTrace();
}
return interactivePDF;
第1行:包含xdp模板的文件夹的位置
Line2-4:创建PDFFormRenderOptions并设置其属性
第7行:使用FormsService的renderPDFForm服务操作生成交互式PDF
第11行:将生成的交互式pdf返回到调用应用程序
在系统上测试示例包
-
搜索Adobe Granite CSRF筛选器
-
在排除的部分中添加以下路径并保存
-
/bin/generateinteractivepdf
-
搜索 Apache Sling服务用户映射器服务,然后单击以打开属性
- 单击 + 图标(加号)以添加以下服务映射
- DevelopingWithServiceUser.core:getformsresourceresolver=fd-service
- 单击“保存”
- 单击 + 图标(加号)以添加以下服务映射
-
填写几个字段,然后单击 下载并填写… 按钮
-
应将交互式pdf下载到您的本地系统
示例包包含与移动设备表单关联的自定义配置文件。 请浏览customtoolbar.jsp文件。 此jsp从移动设备表单中提取数据,并对挂载在 /bin/generateinteractivepdf 路径上的servlet发出POST请求。 此servlet将交互式pdf返回到调用应用程序。 customtoolbar.jsp中的代码然后将文件下载到本地系统
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e