Show Menu
ARGOMENTI×

Dettagli del documento per il renderer

Introduzione

Nellarea di lavoro di AEM Forms, sono supportati più tipi di moduli senza problemi. Comprendono:
  • PDF forms (XDP/Acroform/PDF flat)
  • Nuovi moduli HTML
  • Immagini
  • Applicazioni di terze parti (ad esempio, Gestione della corrispondenza)
In questo documento viene illustrato il funzionamento di questi renderer dal punto di vista della personalizzazione semantica e del riutilizzo dei componenti, in modo da soddisfare le esigenze dei clienti senza interrompere alcuna rappresentazione. Anche se 'area di lavoro di AEM Forms consente qualsiasi interfaccia utente/modifica semantica, si consiglia di non modificare la logica di rendering dei diversi tipi di modulo, altrimenti i risultati potrebbero essere imprevedibili. Questo documento è destinato alle linee guida/conoscenze per supportare il rendering dello stesso modulo, l’utilizzo degli stessi componenti dell’area di lavoro in portali diversi e non la modifica della logica di rendering stessa.

PDF forms

Viene eseguito il rendering dei PDF forms da PdfTaskForm View .
Quando si esegue il rendering di un modulo XDP come PDF, il servizio FormsAugmenter aggiunge un FormBridge JavaScript™. Questo JavaScript™ (all'interno del modulo PDF) consente di eseguire azioni quali l'invio, il salvataggio dei moduli o la messa in modalità offline dei moduli.
Nell'area di lavoro AEM Forms, la visualizzazione PDFTaskForm comunica con il FormBridge javascript tramite un HTML intermedio presente in /lc/libs/ws/libs/ws/pdf.html . Il flusso è:
Visualizzazione PDFTaskForm - pdf.html
Comunica utilizzando window.postMessage / window.attachEvent('message')
Questo metodo è il metodo standard di comunicazione tra un fotogramma principale e un iframe. I listener di eventi esistenti provenienti da PDF forms aperti in precedenza vengono rimossi prima di aggiungerne uno nuovo. Questa eliminazione considera anche il passaggio tra la scheda del modulo e la scheda della cronologia nella visualizzazione dei dettagli dell'attività.
pdf.html - FormBridge javascript nel PDF di cui è stato effettuato il rendering
Comunica utilizzando pdfObject.postMessage / pdfObject.messageHandler
Questo metodo è il metodo standard di comunicazione con un PDF PDFavaScript da un HTML. La visualizzazione PdfTaskForm si occupa anche di PDF semplice e lo riproduce in modo semplice.
Non è consigliabile modificare il contenuto pdf.html / della visualizzazione PdfTaskForm.

Nuovo Forms HTML

Il rendering dei nuovi moduli HTML viene eseguito dalla visualizzazione NewHTMLTaskForm.
Quando si esegue il rendering in HTML di un modulo XDP utilizzando il pacchetto di moduli mobili distribuito in CRX, al modulo viene aggiunto anche FormBridge JavaScript aggiuntivo, che espone metodi diversi per salvare e inviare i dati del modulo.
Questo JavaScript è diverso da quello indicato nei PDF forms precedenti, ma ha uno scopo simile.
Non è consigliabile modificare il contenuto della visualizzazione NewHTMLTaskForm.

Flex Forms e Guide

Il rendering di Flex Forms viene eseguito da SwfTaskForm e il rendering delle guide viene eseguito rispettivamente da HtmlTaskForm Views.
Nell'area di lavoro AEM Forms, queste viste comunicano con il file SWF effettivo che costituisce la forma/guida flessibile utilizzando un file SWF intermedio presente in /lc/libs/ws/libs/ws/WSNextAdapter.swf
La comunicazione avviene utilizzando swfObject.postMessage / window.flexMessageHandler .
Questo protocollo è definito dall' WsNextAdapter.swf . L'oggetto flexMessageHandlers presente nella finestra, dai moduli SWF aperti in precedenza, viene rimosso prima di aggiungerne uno nuovo. La logica considera anche il passaggio tra la scheda del modulo e la scheda della cronologia nella visualizzazione dei dettagli dell'attività. WsNextAdapter.swf viene utilizzato per eseguire varie azioni modulo, ad esempio salvare o inviare.
Non è consigliabile modificare WSNextAdapter.swf o il contenuto della visualizzazione SwfTaskForm/HtmlTaskForm.

Applicazioni di terze parti (ad esempio, Gestione della corrispondenza)

Il rendering delle applicazioni di terze parti viene eseguito utilizzando la visualizzazione ExtAppTaskForm.
Applicazione di terze parti per comunicazione area di lavoro AEM Forms
'area di lavoro di AEM Forms window.global.postMessage([Message],[Payload])
# può essere una stringa specificata come SubmitMessage | CancelMessage | ErrorMessage | actionEnabledMessage nel runtimeMap . Le applicazioni di terze parti devono utilizzare questa interfaccia per notificare 'area di lavoro di AEM Forms in base alle esigenze. L'utilizzo di questa interfaccia è obbligatorio, perché l'area di lavoro di AEM Forms deve sapere che quando l'attività viene inviata in modo da poter ripulire la finestra dell'attività.
area di lavoro AEM Forms alla comunicazione con applicazioni di terze parti
Se pulsanti di azione diretta dell'area di lavoro di AEM Forms sono visibili, viene chiamato window.[External-App-Name].getMessage([Action]) il punto in cui [Action] viene letto dal routeActionMap . L'applicazione di terze parti deve ascoltare questa interfaccia e inviare una notifica 'area di lavoro AEM Forms tramite l' postMessage () API.
Ad esempio, un'applicazione Flex può definire ExternalInterface.addCallback('getMessage', listener) per supportare questa comunicazione. Se l'applicazione di terze parti desidera gestire l'invio del modulo tramite i propri pulsanti, è necessario specificare hideDirectActions = true() in the runtimeMap e ignorare il listener. Quindi, questo costrutto è facoltativo.
Per ulteriori informazioni sull’integrazione di applicazioni di terze parti con la gestione della corrispondenza, consulta Integrazione della gestione della corrispondenza nell’area di lavoro AEM Forms.