Rendering di PDF interattivi tramite Forms Services in AEM Forms

Utilizzo dell’API del servizio Forms in AEM Forms per eseguire il rendering dei PDF interattivi

In questo articolo daremo un'occhiata al seguente servizio

  • FormsService - Si tratta di un servizio molto versatile che consente di esportare/importare dati da e in file PDF e di generare anche file pdf interattivi unendo i dati xml nel modello xdp

Javadoc ufficiale per l'API di AEM Forms è elencato qui

Il frammento di codice seguente esegue il rendering di un file pdf interattivo utilizzando l'operazione renderPDFForm di FormsService. schengen.xdp è un modello che viene utilizzato per unire i dati xml.

String uri = "crx:///content/dam/formsanddocuments";
PDFFormRenderOptions renderOptions = new PDFFormRenderOptions();
renderOptions.setAcrobatVersion(AcrobatVersion.Acrobat_11);
renderOptions.setContentRoot(uri);
Document interactivePDF = null;
try {
interactivePDF = formsService.renderPDFForm("schengen.xdp", xmlData, renderOptions);
} catch (FormsServiceException e) {
 e.printStackTrace();
}
return interactivePDF;

Linea 1: Posizione della cartella che contiene il modello xdp

Linea2-4: Creare PDFFormRenderOptions e impostarne le proprietà

Linea 7: Genera un PDF interattivo utilizzando il funzionamento del servizio renderPDFForm di FormsService

Linea 11: Restituisce il pdf interattivo generato all'applicazione chiamante

Per testare il pacchetto di esempio sul sistema

  1. Scarica e installa il pacchetto di esempio DocumentServices utilizzando la console Web Felix

  2. Scarica e installa il pacchetto utilizzando il gestore di pacchetti AEM

  3. Accedi a configMgr

  4. Ricerca filtro CSRF di Adobe Granite

  5. Aggiungi il seguente percorso nelle sezioni escluse e salva

  6. /bin/generateinteractivepdf

  7. Aprire il modulo mobile

  8. Compila un paio di campi, quindi fai clic su Scarica e compila … pulsante

  9. Il pdf interattivo deve essere scaricato nel sistema locale

Il pacchetto di esempio contiene il profilo personalizzato associato al modulo mobile. Esplora il file customtoolbar.jsp. Questo jsp estrae i dati dal modulo mobile ed effettua una richiesta POST al servlet montato sul percorso /bin/generateinteractivepdf. Il servlet restituisce il pdf interattivo all'applicazione chiamante. Il codice in customtoolbar.jsp quindi scarica il file nel sistema locale

In questa pagina