PrePopolare HTML5 Forms utilizzando l’attributo dei dati prepopulate-html-forms-using-data-attribute

I modelli XDP di cui è stato eseguito il rendering in formato HTML utilizzando AEM Forms sono denominati HTML5 o Mobile Forms. Un caso d’uso comune consiste nel precompilare questi moduli durante il rendering.

Esistono 2 modi per unire i dati con il modello xdp quando viene eseguito il rendering come HTML.

dataRef: è possibile utilizzare il parametro dataRef nell'URL. Questo parametro specifica il percorso assoluto del file di dati unito al modello. Questo parametro può essere un URL di un servizio rest che restituisce i dati in formato XML.

dati: questo parametro specifica i byte di dati con codifica UTF-8 che vengono uniti al modello. Se si specifica questo parametro, il modulo HTML5 ignora il parametro dataRef. Come best practice, consigliamo di utilizzare l’approccio dati.

L’approccio consigliato consiste nell’impostare l’attributo dati nella richiesta con i dati con cui si desidera precompilare il modulo.

slingRequest.setAttribute("data", contenuto);

In questo esempio, stiamo impostando l’attributo dati con il contenuto. Il contenuto rappresenta i dati con cui si desidera precompilare il modulo. In genere, per recuperare il "contenuto" si effettua una chiamata REST a un servizio interno.

Per ottenere questo caso d’uso è necessario creare un profilo personalizzato. I dettagli sulla creazione di un profilo personalizzato sono chiaramente documentati nella documentazione AEM Forms disponibile qui.

Una volta creato il profilo personalizzato, creerai un file JSP che recupererà i dati effettuando chiamate al sistema backend. Una volta recuperati i dati, utilizzerai slingRequest.setAttribute("dati", contenuto); per precompilare il modulo

Durante il rendering dell’XDP, puoi anche trasmettere alcuni parametri all’xdp e in base al valore del parametro puoi recuperare i dati dal sistema backend.

Ad esempio, questo URL contiene il parametro name

La JSP che scrivi avrà accesso al parametro name attraverso request.getParameter("name"). Puoi quindi passare il valore di questo parametro al processo di backend per recuperare i dati richiesti.
Per utilizzare questa funzionalità sul sistema, attenersi alla procedura indicata di seguito:

NOTE
Se si desidera compilare il modulo chiamando il processo di Workbench, è possibile includere callWorkbenchProcess.jsp nel /apps/AEMFormsDemoListings/customprofiles/PrepopulateForm/html.jsp anziché setdata.jsp
recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e