Useful utility services

This sample bundle provides useful utility services that can be used by an AEM Forms developer. The following services are available.

package aemformsutilityfunctions.core;
import java.util.Map;
import com.adobe.aemfd.docmanager.Document;
public interface AemFormsUtilities
{
public abstract com.adobe.aemfd.docmanager.Document createDDXFromMapOfDocuments(Map<String, com.adobe.aemfd.docmanager.Document> paramMap);
public abstract org.w3c.dom.Document w3cDocumentFromStrng(String xmlString);
public abstract com.adobe.aemfd.docmanager.Document orgw3cDocumentToAEMFDDocument(org.w3c.dom.Document xmlDocument);
public abstract String saveDocumentInCrx(String jcrPath,String fileExtension, Document documentToSave);

}

The sample bundle can be downloaded from here

Sample Code to use the utility service(s)

The following is the code that was used in JSP page to create org.w3c.dom.Document from string and convert the document and store it in the CRX repository as shown in the following code snippet.

 aemformsutilityfunctions.core.AemFormsUtilities aemFormsUtilities = sling.getService(aemformsutilityfunctions.core.AemFormsUtilities.class);
com.adobe.aemfd.docmanager.Document xmlStringDoc = aemFormsUtilities.orgw3cDocumentToAEMFDDocument(aemFormsUtilities.w3cDocumentFromStrng("<data><fname>Girish</fname></data>"));
aemFormsUtilities.saveDocumentInCrx("/content/xmlfiles",".xml",xmlStringDoc);

Prerequisites

You will need to deploy DevelopingWithServiceUserBundle and start the bundle.

If you are going to save documents in the CRX repository using these utility service, please follow the developing with service user article. Make sure you provide the required permissions on the appropriate CRX folders to the fd-service user.

recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e