为HTML5表单创建自定义用户档案

用户档案是Apache Sling中的资源节点。 它表示HTML5表单再现服务的自定义版本。 可以使用HTML5表单再现服务来自定义HTML5表单的外观、行为和交互。 用户档案节点位于JCR存储库的/content文件夹中。 您可以将节点直接放置在/content文件夹或/content文件夹的任何子文件夹下。

用户档案节点具有​sling:resourceSuperType​属性,默认值为​xfaforms/用户档案。 节点的渲染脚本位于/libs/xfaforms/用户档案。

Sling脚本是JSP脚本。 这些JSP脚本用作容器,用于将请求表单的HTML和所需的JS/CSS对象组合在一起。 这些Sling脚本也称为​用户档案渲染器脚本。 用户档案呈示器调用Forms OSGi服务来呈示请求的表单。

用户档案脚本在html.jsp和html.POST.jsp中,用于GET和POST请求。 您可以复制和修改一个或多个文件以覆盖和添加您的自定义项。 请勿进行任何就地更改,修补程序更新会覆盖此类更改。

用户档案包含各种模块。 这些模块包括formRuntime.jsp、config.jsp、toolbar.jsp、formBody.jsp、nav_footer.jsp和footer.jsp。

formRuntime.jsp

formRuntime.jsp模块包含客户端库的引用。 它还描述了从请求中提取区域设置信息并在请求中包含本地化消息的方法。 您可以在formRuntime.jsp中包含自己的customJavaScript库或样式。

config.jsp

config.jsp模块包含各种配置,如日志记录、代理服务和行为版本。 您可以将自己的配置和Widget自定义添加到config.jsp模块。 您还可以向config.jsp模块添加自定义Widget注册等配置。

toolbar.jsp

toolbar.jsp包含用于创建彩色工具栏的代码。 要删除工具栏,请从HTML.jsp中删除toolbar.jsp

formBody.jsp

formBody.jsp模块用于XFA表单的HTML表示形式。

起初,HTML5表单仅呈现表单的第一页。 当用户滚动表单时,将加载其余表单。 它使加载体验更快。 nav_footer.jsp组件包含所有样式和必需元素,以便于在滚动时加载页面。

footer.jsp模块为空。 它允许您添加仅用于用户交互的脚本。

创建自定义用户档案

要创建自定义用户档案,请执行以下步骤:

创建用户档案节点

  1. 导航到URL处的CRX DE界面:https://'[server]:[port]'/crx/de并使用管理员凭据登录到接口。

  2. 在左窗格中,导航到位置​/content/xfaforms/用户档案

  3. 复制节点默认值,并将节点粘贴到名为​hrform​的不同文件夹(/content/用户档案)中。

  4. 选择新节点​hrform,并添加一个字符串属性:sling:resourceType,值:hrform/demo

  5. 单击工具栏菜单中的全部保存以保存更改。

创建用户档案呈示器脚本

创建自定义用户档案后,向此用户档案添加渲染信息。 在收到对新用户档案的请求时,CRX将验证要呈现的JSP页是否存在/apps文件夹。 在/apps文件夹中创建JSP页。

  1. 在左窗格中,导览至/apps文件夹。

  2. 右键单击/apps文件夹并选择创建名为​hrform​的文件夹。

  3. 内幕消息: hrform​文件夹创建名为​demo​的文件夹。

  4. 单击​保存全部​按钮。

  5. 导航到/libs/xfaforms/profile/html.jsp并复制节点​html.jsp

  6. 将​html.jsp​节点粘贴到上面创建的名称相同​html.jsp​的/apps/hrform/demo文件夹中,然后单击​保存

  7. 如果您有用户档案脚本的任何其他组件,请按照步骤1-6复制/apps/hrform/demo文件夹中的组件。

  8. 要验证是否已创建用户档案,请打开URL https://'[server]:[port]'/content/xfaforms/profiles/hrform.html

要验证表单,将表单从本地文件系统导入AEM Forms,并在AEM服务器作者实例上预览表单🔗

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