本教學課程是 建立第一個最適化表單 數列。 Adobe建議您依照時間順序來瞭解、執行和示範完整的教學課程使用案例。
AEM Forms 資料整合模組可讓您從不同的後端資料來源(例如AEM使用者設定檔、RESTful Web服務、以SOAP為基礎的Web服務、OData服務和關聯式資料庫)建立表單資料模型。 您可以在表單資料模型中設定資料模型物件和服務,並將其與調適型表單建立關聯。 最適化表單欄位會繫結至資料模型物件屬性。 這些服務可讓您預先填寫最適化表單,並將提交的表單資料寫入回資料模型物件。
如需表單資料整合和表單資料模型的詳細資訊,請參閱 AEM Forms資料整合.
本教學課程將逐步引導您準備、建立、設定表單資料模型,並將其與調適型表單建立關聯。 在本教學課程結束時,您將能夠:
表單資料模型將類似於以下內容:
答: 已設定的資料來源 B. 資料來源結構描述 C. 可用的服務 D. 資料模型物件 E. 已設定的服務
開始之前,請確定您具備下列條件:
您可以設定不同型別的資料來源,以建立表單資料模型。 在本教學課程中,您會設定您已設定並填入範例資料的MySQL資料庫。 如需其他支援的資料來源以及如何設定這些來源的相關資訊,請參閱 AEM Forms資料整合.
執行以下動作來設定您的 MySQL 資料庫:
將資料庫的 MySQL JDBC 驅動程式作為 OSGi 捆綁包安裝:
MySQL從 下載 http://www.java2s.com/ref/jar/download-orgosgiservicejdbc100jar-file.html
JDBC 驅動程式 OSGi 捆綁包。
登入AEM Forms 以管理員身分製作執行個體,並前往AEM網頁主控台套件組合。 預設URL為 https://localhost:4502/system/console/bundles.
選取 安裝/更新. 一個 上傳/安裝套件組合 對話方塊隨即顯示。
選取 選擇檔案 以瀏覽並選取 MySQL JDBC驅動程式OSGi套件。 選取 開始套件組合 和 重新整理封裝,並選取 安裝或更新. Oracle Corporation’s確保 的 MySQL JDBC 驅動程式處於活動狀態。驅動程式已安裝。
將資料庫配置為 MySQL 資料來源:
前往位於 https://localhost:4502/system/console/configMgr AEM 🔗 Web 主控台。
找到 Apache Sling 連線的池資料來源 設定。 選擇以在編輯模式下打開配置。
在設定對話方塊中,指定下列詳細資訊:
weretail
上運行的資料庫,URL為: jdbc:mysql://'server':3306/weretail?autoReconnect=true&useUnicode=true&characterEncoding=utf-8
MySQL當資料庫位於防火牆後面時,資料庫主機名稱不是公共 DNS。資料庫的 IP 位址必須添加到 AEM 主機電腦的 /etc/hosts 檔中。
AEM Forms不支援NT驗證 MySQL. 前往位於 https://localhost:4502/system/console/configMgr 🔗 AEM Web 主控台並搜尋「Apache Sling 連線共用資料來源」。對於「JDBC 連接 URI」屬性,將「集成安全」的值設置為 False,並使用創建的使用者名和密碼與資料庫連接 MySQL 。
借用測試: 啟用借 用 測試選項。
返回時測試: 啟用「 返回 時測試」選項。
驗證查詢: 指定SQL SELECT查詢來驗證集區的連線。 查詢至少必須傳回一列。 例如, 選取 * 從customerdetails.
交易隔離:將值設為 READ_COMMITTED.
保留其他屬性為預設值 值 並選取 儲存.
會建立類似下列的設定。
AEM Forms 提供直覺式使用者介面,用於 建立表單資料模型 來自已設定的資料來源。 您可以在表單資料模型中使用多個資料來源。 對於此使用案例,您可以使用已設定的 MySQL 資料來源。
執行下列操作以建立表單資料模型:
在AEM編寫執行個體中,導覽至 Forms > 資料整合.
選取 建立 > 表單資料模型.
在建立表單資料模型對話方塊中,指定 名稱 用於表單資料模型。 例如, customer-shipping-billing-details. 選取 下一個.
選取資料來源畫面會列出所有已設定的資料來源。 選取 WeRetailMySQL 資料來源並選取 建立.
此 customer-shipping-billing-details 表單資料模型已建立。
設定表單資料模型涉及:
執行下列操作以設定表單資料模型:
在AEM作者執行個體上,瀏覽至 Forms > 資料整合. 預設URL為 https://localhost:4502/aem/forms.html/content/dam/formsanddocuments-fdm.
此 customer-shipping-billing-details 此處列出您先前建立的表單資料模型。 在編輯模式中開啟。
選取的資料來源 WeRetailMySQL 已在表單資料模型中設定。
展開WeRailMySQL資料來源樹狀結構。 從以下資料模型物件和服務中選取 Weretail > customerdetails 結構描述以便建立資料模型:
資料模型物件:
服務:
選取 新增選取專案 將選取的資料模型物件和服務加入至表單資料模型。
JDBC資料來源的預設get、update和insert服務隨表單資料模型一起提供現成可用的功能。
設定資料模型物件的讀取和寫入服務。
選取 customerdetails 資料模型物件並選取 編輯屬性.
選取 get 讀取服務下拉式清單。 此 id 引數,會自動新增customerdetails資料模型物件中的主索引鍵。 選取 並依照以下方式設定引數。
同樣地,選取 更新 做為寫入服務。 此 customerdetails 物件會自動新增為引數。 引數的設定如下。
按如下方式添加和配置 id 參數。
選擇 完成 以保存資料模型物件屬性。 然後,選擇 儲存 以保存表單資料模型。
此 get 和 更新 服務會新增為資料模型物件的預設服務。
前往 服務 標籤並設定 get 和 更新 服務。
選取 get 服務並選取 編輯屬性. 將打開屬性對話方塊。
在編輯 屬性對話方塊中指定以下內容:
標題 :指定服務的標題。 例如:檢索送貨位址。
說明:指定包含服務詳細功能的說明。 例如:
此服務會從以下位置擷取送貨地址和其他客戶詳細資料: MySQL 資料庫
輸出模型物件:選取包含客戶資料的結構描述。 例如:
customerdetail結構描述
傳回陣列:停用 傳回陣列 選項。
引數:選取名為的引數 ID.
選取 完成. 已設定從MySQL資料庫擷取客戶詳細資訊的服務。
選取 更新 服務並選取 編輯屬性. 「屬性」對話方塊開啟。
在「 」中指定以下專案 編輯屬性 對話方塊:
標題:指定服務的標題。 例如,更新送貨地址。
說明:指定包含服務詳細功能的說明。 例如:
此服務會更新MySQL資料庫中的送貨地址和相關欄位
輸入模型物件:選取包含客戶資料的結構描述。 例如:
customerdetail結構描述
輸出型別:選取 布林值.
引數:選取引數名稱 ID 和 customerdetails.
選取 完成. 此 更新 更新客戶詳細資料的服務 MySQL 資料庫已設定。
已設定表單資料模型中的資料模型物件和服務。 您現在可以測試表單資料模型。
您可以測試資料模型物件與服務,以確認表單資料模型已正確設定。
執行下列操作以執行測試:
前往 模型 索引標籤中,選取 customerdetails 資料模型物件,並選取 測試模型物件.
在 測試模型/服務 視窗,選取 讀取模型物件 從 選取模型/服務 下拉式清單。
在 customerdetails 區段,指定 id 存在於設定中的引數 MySQL 資料庫並選取 測試.
系統會擷取與指定ID相關聯的客戶詳細資訊,並顯示在 輸出 區段,如下所示。
同樣地,您可以測試Write模型物件與服務。
在下列範例中,更新服務已成功更新資料庫中ID7102715稱的位址詳細資訊。
現在,如果您再次測試id 7107215的讀取模型服務,它會擷取並顯示更新的客戶詳細資訊,如下所示。