将自适应Forms与XFA表单模板同步

简介

您可以基于XFA表单模板(*.XDP文件)创建自适应表单。 这种重复使用使您能够保留对现有XFA表单的投资。 有关如何使用XFA表单模板创建自适应表单的信息,请基于模板创建自适应表单。

您可以在自适应表单中重复使用XDP文件中的字段。 这些字段称为绑定字段。 绑定字段的属性(如脚本、标签和显示格式)将从XDP文件中复制。 您还可以选择覆盖其中某些属性的值。

AEM Forms提供了一种方法,帮助您使自适应表单的字段与随后对XDP文件中的相应字段所做的任何更改保持同步。 本文说明了如何启用此同步。

您可以将字段从XFA表单拖动到自适应表单

在AEM Forms创作环境中,您可以将字段从XFA表单(左)拖动到自适应表单(右)

前提条件

要使用本文中的信息,建议您熟悉以下方面:

要使用文章中的示例提供的资产,请下载示例包,如下一节示例包中所述。

示例包

文章使用一个示例演示如何将自适应表单与更新的XFA表单模板同步。 此示例中使用的资源位于包中,可从本文的下载部分下载。

上传包后,您可以在AEM Forms UI中视图这些资产。

使用包管理器安装包:https://<server>:<port>/crx/packmgr/index.jsp

该包包含以下资产:

  1. sample-form.xdp:用作示例的XFA表单模板

  2. sample-xfa-af:基于sample-form.xdp文件的自适应表单。但是,此自适应表单不包含任何字段。 在下一步中,我们将向此自适应表单添加内容。

将内容添加到自适应表单

  1. 导航到https://<server>:<port>/aem/forms.html。 如果询问,请输入您的凭据。
  2. 打开示例af-xfa,以在创作模式下进行编辑。
  3. 从侧栏中的内容浏览器中,选择“数据模型对象”选项卡。 将NumericField1和TextField1拖动到自适应表单上。
  4. 将NumericField1的标题从​Numeric Field​更改为​AF Numeric Field。
注意

在前面的步骤中,我们在XDP文件中覆盖了字段的属性。 因此,如果稍后修改XDP文件中的相应属性,则不同步此属性。

检测XDP文件中的更改

只要XDP文件或片段中有任何更改,AEM Forms UI就会标记所有基于XDP文件或片段的自适应表单。

更新XDP文件后,您需要在AEM Forms UI中再次上传它,以便标记更改。

例如,让我们按照以下步骤更新sample-form.xdp文件:

  1. 导航到https://<server>:<port>/projects.html.如果出现提示,请输入您的凭据。

  2. 单击左侧的Forms选项卡。

  3. sample-form.xdp文件下载到本地计算机上。 XDP文件将下载为.zip文件,可使用任何文件解压缩实用程序提取该文件。

  4. 打开sample-form.xdp文件,将字段TextField1的标题从​Text Field​更改为​My Text Field

  5. sample-form.xdp文件上传回AEM Forms UI。

如果XDP文件更新,则在编辑基于XDP文件的自适应表单时,您会在编辑器中看到一个图标。 此图标表示自适应表单与XDP文件不同步。 在下图中,请参阅侧栏中旁边的图标。

用于显示自适应表单与XDP文件不同步的图标

将自适应表单与最新的XDP文件同步

在下次打开与XDP文件不同步的自适应表单进行创作时,将显示以下消息:自适应表单的模式/表单模板已更新。 Click Here 以使用新版本对其进行重新设计。

单击消息会将自适应表单中的字段与XDP文件中的相应字段同步。

对于本文中使用的示例,请在创作模式下打开sample-xfa-af。 消息将显示在自适应表单的底部。

提示您将自适应表单与XDP文件同步的消息

更新属性

除了作者在自适应表单(从组件对话框中)中显式覆盖的属性外,从XDP文件复制到自适应表单的所有属性都将更新。 服务器日志中提供已更新属性的列表。

要更新示例自适应表单中的属性,请单击消息中的链接(标记为"Click Here")。 TextField1的标题从​Text Field​更改为​My Text Field

update-property

注意

未更改标签AF数字字段,因为您已从组件属性对话框中覆盖了此属性,如向自适应表单添加内容中所述。

将新字段从XDP文件添加到自适应表单  

之后添加到原始XDP文件的任何字段都显示在“表单层次结构”选项卡中,您可以将这些新字段拖动到自适应表单。

您无需单击错误消息中的链接即可更新表单层次结构选项卡中的字段。

已删除XDP文件中的字段

如果从XDP文件中删除了以前复制到自适应表单的字段,则在创作模式下会显示一条错误消息,指出该字段不存在于XDP文件中。 在这种情况下,请手动从自适应表单中删除字段或清除组件对话框中的bindRef属性。

以下步骤在本文中使用的示例中说明资产的使用流程:

  1. 更新sample-form.xdp文件并删除NumericField1。

  2. 在AEM Forms UI中上载sample-form.xdp文件

  3. 打开sample-xfa-af自适应表单进行创作。 将显示以下错误消息:自适应表单的模式/表单模板已更新。 Click Here 以使用新版本对其进行重新设计。

  4. 单击消息中的链接(标记为“Click Here”)。 将显示一条错误消息,指出该字段不再存在于XDP文件中。

删除XDP文件中的元素时出现错误

已删除的字段还会标有一个图标,以指示该字段中存在错误。

字段中的错误图标

注意

自适应表单中绑定不正确的字段(编辑对话框中的bindRef值无效)也被视为已删除的字段。 如果作者未修复这些错误并发布自适应表单,则该字段将被视为普通的未绑定自适应表单字段,并包含在输出XML文件的未绑定部分中。

下载

本文中示例的内容包

获取文件

On this page

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now