设置本地开发环境和初始开发项目

当您设置和配置 ​ Adobe Experience Manager Forms as a ​ Cloud Service 环境中,您可以在云上设置开发、暂存和生产环境。 此外,您还可以设置和配置本地开发环境。

您可以使用本地开发环境执行以下操作,而无需登录到云开发环境:

在本地开发实例或要生成的应用程序上准备好自适应表单或相关资产后 [客户通信] 准备就绪,您可以将自适应表单或客户通信应用程序从本地开发环境导出到Cloud Service环境,以便进一步测试或迁移到生产环境。

您还可以在本地开发环境中开发和测试自定义代码,如自定义组件和预填充服务。 测试自定义代码并准备就绪后,您可以使用Cloud Service开发环境的Git存储库来部署自定义代码。

要设置新的本地开发环境并使用它来开发活动,请按列出的顺序执行以下操作:

前提条件

您需要以下软件来设置本地开发环境。 在开始设置本地开发环境之前,请下载以下内容:

软件 描述 下载链接
ADOBE EXPERIENCE MANAGER AS A CLOUD SERVICE SDK SDK包含 Adobe Experience Manager QuickStart和Dispatcher工具 从下载最新的SDK Software Distribution
Adobe Experience Manager Forms功能存档(AEM Forms加载项) 用于创建、设置和优化自适应Forms和其他Adobe Experience Manager Forms功能的工具 下载自 Software Distribution
(可选)Adobe Experience Manager Forms引用内容 用于创建、设置和优化自适应Forms和其他Adobe Experience Manager Forms功能的工具 下载自 Software Distribution
(可选)Adobe Experience Manager Forms Designer 用于创建、设置和优化自适应Forms和其他Adobe Experience Manager Forms功能的工具 下载自 Software Distribution

从Software Distribution下载最新版本的软件

要下载最新版本的Adobe Experience Manager as a Cloud Service SDK、Experience Manager Forms功能存档(AEM Forms加载项)、表单引用资源或Forms Designer,请访问 Software Distribution

  1. 登录 https://experience.adobe.com/#/downloads 使用您的Adobe ID

    注意

    必须为AEMas a Cloud Service配置您的Adobe组织才能下载AEMas a Cloud ServiceSDK。

  2. 导航到 AEMas a Cloud Service 选项卡。

  3. 按发布日期降序排序。

  4. 单击最新的Adobe Experience Manager as a Cloud Service SDK、Experience Manager Forms功能存档(AEM Forms加载项)、表单引用资源或Forms Designer。

  5. 查看并接受EULA。 点按 下载 按钮。

为AEM项目设置开发工具

Adobe Experience Manager Forms项目是一个自定义代码库。 它包含通过Cloud Manager部署到的代码、配置和内容 Adobe Experience Manager as a Cloud Service。 此 AEM项目Maven原型 提供项目的基线结构。

设置以下开发工具以用于 Adobe Experience Manager 开发项目:

有关设置前面提到的开发工具的详细说明,请参阅 设置开发工具.

设置本地Experience Manager环境以进行开发

Cloud ServiceSDK提供了一个快速启动文件。 它运行本地版本的Experience Manager。 您可以在本地运行Author或Publish实例。

虽然QuickStart提供了本地开发体验,但并没有提供所有功能 Adobe Experience Manager as a Cloud Service。 因此,请始终使用测试您的功能和代码 Adobe Experience Manager 在将功能移动到暂存或生产环境之前as a Cloud Service的开发环境。

要安装和配置本地Experience Manager环境,请执行以下步骤:

将Forms存档添加到本地创作和发布实例,并配置特定于Forms的用户

按照列出的顺序执行以下步骤,将Forms存档添加到Experience Manager实例并配置特定于表单的用户:

安装最新的Forms附加功能存档

Adobe Experience Manager Formsas a Cloud Service功能存档提供了用于在本地开发环境中创建、样式化和优化自适应Forms的工具。 安装该包以创建自适应表单并使用的各种其他功能 AEM Forms. 要安装包,请执行以下操作:

  1. 下载并解压缩最新版本 AEM Forms 存档适用于您的操作系统的来源 Software Distribution.

  2. 导航到crx-quickstart/install目录。 如果该文件夹不存在,请创建它。

  3. 停止AEM实例,放置 AEM Forms 附加功能存档, aem-forms-addon-<version>.far,然后重新启动实例。

配置用户和权限

创建像表单开发人员和表单从业者这样的用户,以及 将这些用户添加到预定义的表单组 以向他们提供所需的权限。 下表列出了所有类型的用户和每种类型表单用户的预定义组:

用户类型 AEM组
表单操作者/ forms-users (AEM Forms用户), template-authors, workflow-users, workflow-editors、和 fdm-authors
表单开发人员 forms-users (AEM Forms用户), template-authors, workflow-users, workflow-editors、和 fdm-authors
Customer Experience Lead或UX设计器 forms-users、template-authors
AEM 管理员 aem-administrators、fd-administrators
最终用户 当用户必须登录才能查看并提交自适应表单时,请将这些用户添加到 forms-users 组。
当访问自适应Forms不需要用户身份验证时,不要向此类用户分配任何组。

为记录文档(DoR)设置本地开发环境

AEM Forms as aCloud Services提供了一个基于Docker的SDK环境,更便于开发记录文档和使用其他微服务。 它使您无需手动配置特定于平台的二进制文件和自适应。 要设置环境,请执行以下操作:

  1. 安装和配置Docker:

    • (对于Microsoft® Windows)安装 Docker桌面. 它配置 Docker Enginedocker-compose 在你的电脑上。

    • (Apple macOS)安装 适用于Mac的Docker桌面. 它包括Docker引擎、Docker CLI客户端、Docker撰写、Docker内容信任、Kubernetes和凭据帮助程序。

    • (对于Linux®)安装 Docker引擎Docker撰写 在你的电脑上。

    注意
    • 对于Apple macOS,请允许列表包含本地AEM创作实例的文件夹。

    • Docker Desktop for Windows支持两个后端,Hyper-V
      (旧版)和WSL2(新版)。 文件共享是自动进行的
      使用WSL2(新版)时由Docker管理。 你必须要
      在使用Hyper-V(旧版)时明确配置文件共享。

  2. 创建与创作实例和发布实例并行的文件夹(例如aem-sdk)。 例如C:\aem-sdk。

  3. 提取 aem-forms-addon-<version>.zip\aem-forms-addon-native-<version>.zip 文件。

    提取的aem forms加载项(本机)

  4. 创建一个环境变量AEM_HOME,并指向本地AEM Author安装。 例如C:\aem\author\。

  5. 打开sdk.bat或sdk.sh进行编辑。 将AEM_HOME设置为指向本地AEM Author安装。 例如C:\aem\author\。

  6. 打开命令提示符并导航到 aem-forms-addon-native-<version> 文件夹。

  7. 确保您的本地AEM创作实例已启动并正在运行。 运行以下命令以启动SDK:

    • (在Microsoft® Windows上) sdk.bat start
    • (在Linux®或Apple macOS上) AEM_HOME=[local AEM Author installation] ./sdk.sh start
    注意

    如果已在sdk.sh文件中定义了环境变量,则可以在命令行中指定该变量,这是可选的。 提供了在命令行定义环境变量的选项,用于执行命令而不更新shell脚本。

    start-sdk-command

您现在可以使用本地开发环境渲染记录文档。 要进行测试,请将XDP文件上传到您的环境并进行渲染。 例如, http://localhost:4502/libs/xfaforms/profiles/default.print.pdf?template=crx:///content/dam/formsanddocuments/cheque-request.xdp 将XDP文件转换为PDF文档。

基于Experience Manager原型设置Forms开发项目

使用此项目可在本地创建自适应Forms、部署配置更新、叠加、创建自定义自适应表单组件、测试和自定义代码 Experience Manager Forms SDK。 在本地测试后,您可以将项目部署到 Experience Manager Forms as a Cloud Service的生产和非生产环境。 在部署项目时,还会部署以下AEM Forms资源:

主题 模板 表单数据模型
画布3.0 基本 Microsoft® Dynamics 365
宁静 空白 Salesforce
城市
Ultramarine
Beryl
注意

设置基于AEM Archetype版本30或更高版本的项目以获取并使用Microsoft® Dynamics 365和Salesforce Form数据模型以及AEM Formsas a Cloud Service。
设置基于AEM Archetype版本32或更高版本的项目,以获取并使用AEM Formsas a Cloud Service的Tranquil、Urbane和Ultraminary主题。

要设置项目,请执行以下操作:

  1. 在本地开发实例上克隆Cloud Manager Git存储库: 您的Cloud Manager Git存储库包含一个默认的AEM项目。 它基于 AEM原型. 使用Cloud Manager UI中的自助Git帐户管理克隆Cloud Manager Git存储库,将项目引入本地开发环境。 有关访问存储库的详细信息,请参阅 访问存储库.

  2. 创建 Experience Manager Forms as a [Cloud Service] 项目: 创建 Experience Manager Forms as a [Cloud Service] 基于最新版本的项目 AEM原型 或更高版本。 原型可帮助开发人员轻松开始开发 AEM Forms as a Cloud Service。 它还包含一些示例主题和模板,可帮助您快速入门。

    打开命令提示符并运行以下命令以创建 Experience Manager Forms as a Cloud Service项目。

    mvn -B org.apache.maven.plugins:maven-archetype-plugin:3.2.1:generate -D archetypeGroupId=com.adobe.aem -D archetypeArtifactId=aem-project-archetype -D archetypeVersion="41" -D appTitle=mysite -D appId=mysite -D groupId=com.mysite -D includeFormsenrollment="y" -D aemVersion="cloud"
    

    更改 appTitleappId、和 groupId 以反映您的环境。 此外,请将includeFormsenrollment、includeFormscommunications和includeFormsheadless的值设置为 yn 取决于您的许可证和要求。 根据核心组件创建自适应Forms时,必须使用includeFormsheadless。

    • 使用 includeFormsenrollment=y 选项以包含创建自适应Forms所需的Forms特定配置、主题、模板、核心组件和依赖项。 如果您使用Forms Portal,请设置 includeExamples=y 选项。 它还将Forms Portal核心组件添加到项目中。

    • 使用 includeFormscommunications=y 选项以包含Forms核心组件和包含客户通信功能所需的依赖项。

  3. 将项目部署到您的本地开发环境。 您可以使用以下命令部署到本地开发环境

    mvn -PautoInstallPackage clean install

    有关命令的完整列表,请参见 构建和安装

  4. 将代码部署到您的 AEM Forms as a Cloud Service环境.

设置本地Dispatcher工具

Dispatcher是一个Apache HTTP Web服务器模块,在CDN和AEM发布层之间提供安全和性能层。 Dispatcher是整个Experience Manager架构的组成部分,应当是本地开发环境的一部分。

执行以下步骤来配置本地Dispatcher,然后向其添加特定于Forms的规则:

设置本地调度程序

此 Experience Manager as a Cloud ServiceSDK包括推荐的Dispatcher工具版本,这有助于在本地配置、验证和模拟Dispatcher。 Dispatcher工具基于Docker,并提供命令行工具将Apache HTTP Web Server和Dispatcher配置文件转换为兼容格式并将它们部署到在Docker容器中运行的Dispatcher。

Dispatcher上的缓存允许 AEM Forms 在客户端预填充自适应Forms。 它提高了预填充表单的渲染速度。

有关设置Dispatcher的详细说明,请参阅 设置本地Dispatcher工具

将Forms特定规则添加到Dispatcher

执行以下步骤可为Experience Manager Formsas a Cloud Service配置Dispatcher缓存:

  1. 打开AEM项目并导航到 \src\conf.dispatcher.d\available_farms

  2. 创建 default.farm 文件。 例如:forms.farm

  3. 打开新创建的 forms.farm 用于编辑和替换以下代码的文件:

    #/ignoreUrlParams {
    #/0001 { /glob "*" /type "deny" }
    #/0002 { /glob "q" /type "allow" }
    #}
    

    替换为

    /ignoreUrlParams {
    /0001 { /glob "*" /type "deny" }
    /0002 { /glob "dataRef" /type "allow" }
    }
    
  4. 保存并关闭文件。

  5. 转到 conf.d/enabled_farms 并创建指向 forms.farm 文件。

  6. 编译项目并将其部署到您的 AEM Forms as a Cloud Service环境。

有关缓存的注意事项

  • 调度程序缓存允许 AEM Forms 在客户端预填充自适应Forms。 它提高了预填充表单的渲染速度。
  • 默认情况下,缓存受保护内容功能处于禁用状态。 要启用该功能,您可以按照 缓存受保护内容 文章
  • Dispatcher可能无法使某些自适应Forms和相关自适应Forms失效。 要解决此类问题,请参阅 AEM Forms 缓存 在疑难解答部分中。
  • 缓存本地化的自适应Forms:
    • 使用URL格式 http://host:port/content/forms/af/<afName>.<locale>.html 请求自适应表单的本地化版本,而不是 http://host:port/content/forms/af/afName.html?afAcceptLang=<locale>
    • 默认情况下,“浏览器区域设置”选项处于禁用状态。 要更改浏览器区域设置设置,
  • 当您使用URL格式时 http://host:port/content/forms/af/<adaptivefName>.html,并且禁用了配置管理器中的使用浏览器区域设置,则会提供自适应表单的非本地化版本。 非本地化语言是开发自适应表单时使用的语言。 不会考虑为您的浏览器配置的区域设置(浏览器区域设置),并且会提供自适应表单的非本地化版本。
  • 当您使用URL格式时 http://host:port/content/forms/af/<adaptivefName>.html,并且启用了Configuration Manager中的“使用浏览器区域设置” ,提供了自适应表单的本地化版本(如果可用)。 本地化的自适应表单的语言基于为您的浏览器配置的区域设置(浏览器区域设置)。 它可能会导致 [仅缓存自适应表单的第一个实例]. 要防止问题在实例中发生,请参阅 仅缓存自适应表单的第一个实例 在疑难解答部分中。

您的本地开发环境已准备就绪。

在AEM Formsas a Cloud Service和本地开发环境中启用自适应Forms核心组件

在AEM Formsas a Cloud Service上启用自适应Forms核心组件,允许您使用AEM FormsCloud Service实例向多个渠道开始创建、发布和交付基于核心组件的自适应Forms和Headless Forms。 您需要启用自适应Forms核心组件的环境才能使用Headless自适应Forms。

有关说明,请参阅 在AEM Formsas a Cloud Service和本地开发环境中启用自适应Forms核心组件

升级本地开发环境

将SDK升级到新版本需要替换整个本地开发环境,从而导致本地存储库中的所有代码、配置和内容丢失。 确保任何不应销毁的代码、配置或内容都会安全提交到Git,或从本地Experience Manager实例导出为CRX包。

如何在升级SDK时避免内容丢失

升级SDK会有效地创建全新的创作和发布实例,包括新的存储库(设置AEM项目),这意味着对先前SDK存储库所做的任何更改都将丢失。 有关帮助在SDK升级之间保留内容的可行策略,请参阅 升级AEM SDK时如何避免内容丢失

备份特定于Forms的内容并将其导入到新的SDK环境中

要将资产从现有SDK备份并移动到新SDK环境,请执行以下操作:

  • 创建现有内容的备份。

  • 设置全新SDK环境。

  • 将备份导入到新的SDK环境中。

创建现有内容的备份

备份自适应Forms、模板、表单数据模型、主题、配置和自定义代码。 您可以执行以下操作来创建备份:

  1. 下载 自适应Forms、主题和PDF forms。

  2. 导出自适应表单模板。

  3. 下载表单数据模型

  4. 导出可编辑模板、云配置和工作流模型。 要从现有SDK中导出前面提到的所有项目,请创建 CRX-Package 筛选条件:

    • /conf/ReferenceEditableTemplates
    • /conf/global/settings/cloudconfigs
    • /conf/global/settings/wcm
    • /var/workflow/model
    • /conf/global/settings/workflow
  5. 从本地开发环境导出电子邮件配置、提交和预填充操作代码。 要导出这些设置和配置,请在本地开发环境中创建以下文件夹和文件的副本:

    • [Archetype Project in Cloud Service Git]/core/src/main/java/com/<program name>/core/service
    • [Archetype Project in Cloud Service Git] /core/src/main/java/com/<program name>/core/servlets/FileAttachmentServlet.java
    • [Archetype Project in Cloud Service Git]/ui.apps/src/main/content/jcr_root/apps/<program name>/config

将备份导入到新的SDK环境

将自适应Forms、模板、表单数据模型、主题、配置和自定义代码导入新环境。 您可以执行以下操作来导入备份:

  1. 导入 自适应Forms、主题和新SDK环境的PDF forms。

  2. 将自适应表单模板导入到新的SDK环境。

  3. 将表单数据模型上传到新的SDK环境。

  4. 导入可编辑的模板、云配置和工作流模型。 要将前面提到的所有项目导入到新的SDK环境中,请将包含这些项目的CRX包导入到新的SDK环境中。

  5. 从本地开发环境导入电子邮件配置、提交和预填充操作代码。 要导入这些设置和配置,请将以下文件从旧原型项目放入新原型项目:

    • [Archetype Project in Cloud Service Git]/core/src/main/java/com/<program name>/core/service
    • [Archetype Project in Cloud Service Git] /core/src/main/java/com/<program name>/core/servlets/FileAttachmentServlet.java
    • [Archetype Project in Cloud Service Git]/ui.apps/src/main/content/jcr_root/apps/<program name>/config

您的新环境现在具有旧环境的表单和相关资产。

在此页面上