當您設定並設定 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 |
若要從以下網址下載最新版本的Adobe Experience Manager as a Cloud Service SDK、Experience Manager Forms功能封存(AEM Forms附加元件)、表單參考資產或Forms Designer,請前往 Software Distribution:
登入 https://experience.adobe.com/#/downloads 與Adobe ID
必須布建您的Adobe組織,AEMas a Cloud Service才能下載AEMas a Cloud ServiceSDK。
導覽至 AEMas a Cloud Service 標籤。
依發佈日期以降序排序。
按一下最新的Adobe Experience Manager as a Cloud Service SDK、Experience Manager Forms功能封存(AEM Forms附加元件)、表單參考資產或Forms Designer。
檢閱並接受EULA。 點選 下載 按鈕。
Adobe Experience Manager Forms專案是自訂程式碼基底。 其中包含透過Cloud Manager部署至 Adobe Experience Manager as a Cloud Service。 此 AEM專案Maven原型 提供專案的基線結構。
設定下列開發工具以用於 Adobe Experience Manager 開發項目:
如需設定前述開發工具的詳細指示,請參閱 設定開發工具.
Cloud ServiceSDK提供QuickStart檔案。 它會執行本機版本的Experience Manager。 您可以在本機執行「製作」或「發佈」執行個體。
雖然QuickStart提供了本地開發體驗,但它並沒有 Adobe Experience Manager as a Cloud Service。 因此,請一律使用測試您的功能和程式碼 Adobe Experience Manager as a Cloud Service開發環境,再將功能移至預備或生產環境。
要安裝和配置本地Experience Manager環境,請執行以下步驟:
在所列順序中執行下列步驟,將Forms封存新增至Experience Manager執行個體並設定表單專用使用者:
Adobe Experience Manager Formsas a Cloud Service功能封存提供工具,可在本機開發環境中建立、設定樣式和最佳化最適化Forms。 安裝套件以建立最適化表單,並使用 AEM Forms. 要安裝包:
下載並解壓縮最新 AEM Forms 從 Software Distribution.
導覽至crx-quickstart/install目錄。 如果資料夾不存在,請建立它。
停止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 |
客戶體驗銷售機會或UX設計工具 | forms-users, template-authors |
AEM 管理員 | aem-administrators, fd-administrators |
一般使用者 | 當使用者必須登入才能檢視和提交適用性表單時,請將這類使用者新增至 forms-users 群組。 當存取適用性Forms不需要使用者驗證時,請勿將任何群組指派給這類使用者。 |
AEM Forms as aCloud Services提供以Docker為基礎的SDK環境,以更輕鬆開發記錄檔案和使用其他微服務。 如此一來,您就不必再手動設定平台專屬的二進位檔和調整功能。 若要設定環境:
安裝和配置Docker:
(適用於Microsoft® Windows)安裝 Docker Desktop. 它會設定 Docker Engine
和 docker-compose
在你的機器上。
(Apple macOS)安裝 適用於Mac的Docker Desktop. 它包括Docker引擎、Docker CLI客戶端、Docker撰寫、Docker內容信任、Kubernetes和憑據幫助程式。
(Linux®)安裝 Docker引擎 和 Docker Compose 在你的機器上。
若為Apple macOS,則允許清單資料夾內含本機AEM Author例項。
Docker Desktop for Windows支援兩個後端,Hyper-V
(舊版)和WSL2(現代版)。 檔案共用會自動
使用WSL2時由Docker管理(現代)。 你必須
使用Hyper-V(舊版)時顯式配置檔案共用。
與製作和發佈例項平行建立資料夾,例如aem-sdk。 例如C:\aem-sdk。
擷取 aem-forms-addon-<version>.zip\aem-forms-addon-native-<version>.zip
檔案。
建立環境變數AEM_HOME並指向本機AEM Author安裝。 例如C:\aem\author\。
開啟sdk.bat或sdk.sh進行編輯。 設定AEM_HOME ,以指向本機AEM Author安裝。 例如C:\aem\author\。
開啟命令提示字元並導覽至 aem-forms-addon-native-<version>
檔案夾。
請確定您本機的AEM Author例項已啟動並執行。 執行下列命令以啟動SDK:
sdk.bat start
AEM_HOME=[local AEM Author installation] ./sdk.sh start
如果您已在sdk.sh檔案中定義環境變數,請在命令列中指定它為選用。 在命令行處定義環境變數的選項被提供來執行該命令,而不更新shell指令碼。
您現在可以使用本機開發環境來轉譯記錄檔案。 若要測試,請上傳XDP檔案至您的環境並加以呈現。 例如, http://localhost:4502/libs/xfaforms/profiles/default.print.pdf?template=crx:///content/dam/formsanddocuments/cheque-request.xdp 將XDP檔案轉換為PDF文檔。
本專案可讓您在本機上建立適用性Forms、部署設定更新、覆蓋、建立自訂適用性表單元件、測試和自訂程式碼 Experience Manager Forms SDK. 在本機測試後,您可以將專案部署至 Experience Manager Forms as a Cloud Service的生產和非生產環境。 部署專案時,也會部署下列AEM Forms資產:
主題 | 範本 | 表單資料模型 |
---|---|---|
畫布3.0 | 基本 | Microsoft® Dynamics 365 |
寧靜 | 空白 | Salesforce |
厄巴內 | ||
超海洋 | ||
柏利 |
設定AEM原型30版或更新版本型專案,以取得和使用Microsoft® Dynamics 365和Salesforce表單資料模型,並搭配AEM Formsas a Cloud Service。
設定AEM Archetype 32版或更新版本型專案,以取得和使用具有AEM Formsas a Cloud Service的Tranquil、Urbane和Ultramarine主題。
若要設定專案:
在本機開發執行個體上複製Cloud Manager Git存放庫: 您的Cloud Manager Git存放庫包含預設的AEM專案。 其基礎為 AEM原型. 使用Cloud Manager UI中的自助服務Git帳戶管理功能,原地複製您的Cloud Manager Git存放庫,將專案帶入本機開發環境。 有關訪問儲存庫的詳細資訊,請參閱 存取儲存庫.
建立 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=40 -D aemVersion="cloud" -D appTitle="Borgo AEM Forms" -D appId="bgaemforms" -D groupId="com.bgaemforms" -D includeFormsenrollment="y" -D includeFormscommunications="y" -D includeExamples="y" -D
變更 appTitle
, appId
,和 groupId
以反映您的環境。 此外,為includeFormsenrollment、includeFormscommunications和includeFormsheadless設定值,以 y
或 n
視您的授權和需求而定。 必須使用includeFormsheadless才能根據核心元件建立最適化Forms。
使用 includeFormsenrollment=y
選項包含建立最適化Forms所需的Forms特定設定、主題、範本、核心元件和相依性。 如果您使用Forms Portal,請設定 includeExamples=y
選項。 此外,也將Forms Portal核心元件新增至專案。
使用 includeFormscommunications=y
選項包含Forms核心元件和包含客戶通訊功能所需的相依性。
將專案部署至本機開發環境。 您可以使用下列命令來部署至本機開發環境
mvn -PautoInstallPackage clean install
有關命令的完整清單,請參見 建置和安裝
Dispatcher是Apache HTTP Web伺服器模組,可在CDN和AEM Publish層級之間提供安全性和效能層。 Dispatcher是整體Experience Manager架構的必要部分,且應是本機開發環境的一部分。
執行下列步驟來設定本機Dispatcher,然後新增Forms專用規則至:
此 Experience Manager as a Cloud Service的SDK包含建議的Dispatcher工具版本,有助於在本機設定、驗證和模擬Dispatcher。 Dispatcher工具以Docker為基礎,並提供命令列工具,將Apache HTTP Web Server和Dispatcher組態檔傳輸成相容格式,並部署至在Docker容器中執行的Dispatcher。
Dispatcher上的快取允許 AEM Forms 在用戶端預填適用性Forms。 它可改善預填表單的轉譯速度。
如需設定Dispatcher的詳細指示,請參閱 設定本機Dispatcher工具
執行下列步驟來設定Experience Manager Formsas a Cloud Service的Dispatcher快取:
開啟AEM專案並導覽至 \src\conf.dispatcher.d\available_farms
建立 default.farm
檔案。 例如, forms.farm
.
開啟新建立的 forms.farm
檔案進行編輯並取代下列程式碼:
#/ignoreUrlParams {
#/0001 { /glob "*" /type "deny" }
#/0002 { /glob "q" /type "allow" }
#}
替換為
/ignoreUrlParams {
/0001 { /glob "*" /type "deny" }
/0002 { /glob "dataRef" /type "allow" }
}
儲存並關閉您的檔案。
前往 conf.d/enabled_farms
並建立指向的符號連結 forms.farm
檔案。
編譯專案並部署至您的 AEM Forms as a Cloud Service環境。
http://host:port/content/forms/af/<afName>.<locale>.html
請求本地化版本的最適化表單,而非 http://host:port/content/forms/af/afName.html?afAcceptLang=<locale>
http://host:port/content/forms/af/<adaptivefName>.html
,且設定管理員中的「使用瀏覽器地區設定」已停用,則會提供非本地化版本的適用性表單。 非本地化語言是開發最適化表單時使用的語言。 未考慮為瀏覽器配置的地區設定(瀏覽器地區設定),並提供非本地化版本的適用性表單。http://host:port/content/forms/af/<adaptivefName>.html
,並啟用設定管理器中的「使用瀏覽器地區設定」 ,則會提供適用性表單的本地化版本(如果可用)。 本地化「適用性表單」的語言是根據為瀏覽器設定的地區(瀏覽器地區)。 這會導致 [僅快取適用性表單的第一個例項]. 若要防止問題在您的執行個體上發生,請參閱 系統只會快取最適化表單的第一個例項 疑難排解一節。您的本地開發環境已就緒。
如果您針對AEM Formsas a Cloud Service使用AEM原型40版或更新版本型程式,核心元件會針對您的環境自動啟用。
若要根據舊版原型為您的AEM Formsas a Cloud Service環境啟用適用性Forms核心元件,請在專案中內嵌WCM核心元件範例成品和Forms核心元件成品(包括範例):
在純文字程式碼編輯器中開啟AEM原型專案資料夾。 例如VS程式碼。
在本機環境中開啟AEM原型專案的頂層.pom檔案(父pom),將下列屬性新增至檔案並儲存。
<properties>
<core.forms.components.version>2.0.4</core.forms.components.version> <!-- Replace the version with the latest released version at https://github.com/adobe/aem-core-forms-components/tags -->
<core.wcm.components.version>2.21.2</core.wcm.components.version>
</properties>
針對 core.forms.components
和 core.wcm.components
,檢查 核心元件檔案.
在頂層(父級)ppm.xml檔案的「相依性」區段中,新增下列相依性:
<!-- Forms Core Component Dependencies -->
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-core</artifactId>
<version>${core.forms.components.version}</version>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-apps</artifactId>
<version>${core.forms.components.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-af-core</artifactId>
<version>${core.forms.components.version}</version>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-af-apps</artifactId>
<version>${core.forms.components.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-examples-apps</artifactId>
<type>zip</type>
<version>${core.forms.components.version}</version>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-examples-content</artifactId>
<type>zip</type>
<version>${core.forms.components.version}</version>
</dependency>
<!-- End of AEM Forms Core Component Dependencies -->
開啟all/pom.xml檔案並新增下列相依性,將適用性Forms核心元件成品新增至AEM原型專案:
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-af-apps</artifactId>
<type>zip</type>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-examples-apps</artifactId>
<type>zip</type>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-examples-content</artifactId>
<type>zip</type>
</dependency>
確認專案中未包含下列適用性Forms核心元件成品。
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-apps</artifactId>
</dependency>
和
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>core-forms-components-core</artifactId>
</dependency>
執行管道. 成功執行管道後,您的環境即會啟用適用性Forms核心元件。 此外,適用性Forms(核心元件)範本和畫布主題已新增至您的Formsas a Cloud Service環境。
將SDK升級至新版本需要取代整個本機開發環境,導致本機存放庫中的所有程式碼、設定和內容都遺失。 確保任何不應銷毀的程式碼、設定或內容都能安全提交至Git,或從本機Experience Manager執行個體匯出為CRX-Packages。
升級SDK能有效建立全新的製作和發佈例項,包括新的存放庫(設定AEM專案),表示對先前SDK存放庫所做的任何變更都會遺失。 如需協助在SDK升級後持續保存內容的可行策略,請參閱 升級AEM SDK時如何避免內容遺失
若要備份資產並將資產從現有SDK移至新的SDK環境:
建立現有內容的備份。
設定全新的SDK環境。
將備份匯入新SDK環境。
備份最適化Forms、範本、表單資料模型、主題、設定和自訂程式碼。 您可以執行以下操作來建立備份:
下載 最適化Forms、主題和PDF forms。
匯出最適化表單範本。
下載表單資料模型
匯出可編輯的範本、雲端設定和工作流程模型。 若要從您現有的SDK匯出所有先前提及的項目,請建立 CRX-Package ,並搭配下列篩選器:
從您的本機開發環境中,匯出電子郵件設定、提交和預填動作程式碼。 若要匯出這些設定和設定,請在本機開發環境中建立下列資料夾和檔案的復本:
[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
將適用性Forms、範本、表單資料模型、主題、設定和自訂程式碼匯入全新環境。 您可以執行下列操作以導入備份:
匯入 適用性Forms、主題和PDF forms,以適應新的SDK環境。
將最適化表單範本匯入新SDK環境。
將表單資料模型上傳至新的SDK環境。
匯入可編輯的範本、雲端設定和工作流程模型。 若要匯入您新SDK環境中所有先前提及的項目,請將包含這些項目的CRX套件匯入至您的新SDK環境。
從您的本機開發環境匯入電子郵件設定、提交和預填動作程式碼。 若要匯入這些設定和設定,請將下列檔案從您的舊原型專案放入您的新原型專案:
[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
您的新環境現在擁有舊環境的表單和相關資產。