以產出和Forms服務發展AEM Forms

在AEM Forms使用輸出和Forms服務API

在本文中,我們將檢視下列

  • 輸出服務——通常,此服務用於將xml資料與xdp範本或pdf合併,以產生平面化的pdf。 有關詳細資訊,請參閱輸出服務的javadoc
  • FormsService —— 這項多功能服務可讓您從PDF檔案匯出/匯入資料。 有關詳細資訊,請參閱Forms服務的javadoc

下列程式碼片段會從PDF檔案匯出資料

javax.servlet.http.Part pdfPart = request.getPart("pdffile");
String filePath = request.getParameter("saveLocation");
java.io.InputStream pdfIS = pdfPart.getInputStream();
com.adobe.aemfd.docmanager.Document pdfDocument = new com.adobe.aemfd.docmanager.Document(pdfIS);
com.adobe.fd.forms.api.FormsService formsservice = sling.getService(com.adobe.fd.forms.api.FormsService.class);
com.adobe.aemfd.docmanager.Document xmlDocument = formsservice.exportData(pdfDocument,com.adobe.fd.forms.api.DataFormat.Auto);

第1行從請求中擷取檔案

Line2從請求中提取saveLocation

第5行擁有FormsService

第6行從PDF檔案匯出xmlData

在系統上測試示例包

使用套件管理器下載並安AEM裝套件

安裝此套件後,您必須在「AdobeGranite CSRF篩選器」中允許列出下列URL。

  1. 請依照下列步驟,列出上述路徑。
  2. 登入configMgr
  3. Adobe花崗石CSRF濾波器的研究
  4. 在排除的區段中新增下列3個路徑並儲存
  5. /content/AemFormsSamples/mergedata
  6. /content/AemFormsSamples/exportdata
  7. /content/AemFormsSamples/outputservice
  8. 搜尋「Sling Referrer篩選」
  9. 選中「允許空」複選框。 (此設定應僅用於測試用途)
    有許多方法可測試范常式式碼。 最快速最簡單的方式就是使用Postman應用程式。 郵遞員可讓您向伺服器提出POST要求。 在您的系統上安裝Postman應用程式。
    啟動應用程式並輸入下列URL以測試匯出資料API

請確定您已從下拉式清單中選取「POST」
http://localhost:4502/content/AemFormsSamples/exportdata.html
請確定您指定「授權」為「基本授權」。 指定伺AEM服器使用者名稱和密碼
導覽至「內文」標籤,並指定請求參數,如下圖所示
export
然後按一下「傳送」按鈕

包含3個樣本。 以下各段說明何時使用輸出服務或Forms服務、服務的url、每個服務所需的輸入參數

合併資料並平面化輸出:

  • 使用Output Service將資料與xdp或pdf檔案合併,以產生平面化的pdf

  • POSTURL:http://localhost:4502/content/AemFormsSamples/outputservice.html

  • 請求參數-

    • xdp_or_pdf_file:您要將資料與
    • xmlfile:將與xdp_or_pdf_file合併的xml資料檔案
    • saveLocation:在檔案系統上保存所呈現文檔的位置

將資料匯入PDF檔案:

  • 使用FormsService將資料匯入PDF檔案

  • POSTURL - http://localhost:4502/content/AemFormsSamples/mergedata.html

  • 請求參數:

    • pdf檔案:您要將資料與
    • xmlfile:將與pdf檔案合併的xml資料檔案
    • saveLocation:在檔案系統上保存所呈現文檔的位置。 例如c:\\outputsample.pdf。

從PDF檔案匯出資料

  • 使用FormsService從PDF檔案匯出資料

  • POST URL - http://localhost:4502/content/AemFormsSamples/exportdata.html

  • 請求參數:

    • pdf檔案:您要從
    • saveLocation:在檔案系統上保存導出資料的位置

您可以匯入此郵遞員系列來測試API

本頁內容

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