Documentdetails voor renderer

Inleiding

In de AEM Forms-werkruimte worden meerdere formuliertypen naadloos ondersteund. Deze omvatten:

  • PDF forms (XDP / Acrobat / Platte PDF's)
  • Nieuwe HTML-formulieren
  • Afbeeldingen
  • Toepassingen van derden (bijvoorbeeld Correspondence Management)

In dit document wordt uitgelegd hoe deze renderers werken vanuit het perspectief van semantische aanpassing/hergebruik van componenten, zodat aan de vereisten van de klant wordt voldaan zonder dat een renditie wordt verbroken. Hoewel in de AEM Forms-werkruimte alle gebruikersinterface-/semantische wijzigingen mogelijk zijn, wordt aangeraden de renderinglogica van verschillende formuliertypen niet te wijzigen, anders kunnen de resultaten onvoorspelbaar zijn. Dit document is bedoeld als leidraad/kennis ter ondersteuning van rendering van hetzelfde formulier, waarbij dezelfde werkruimtecomponenten in verschillende portalen worden gebruikt, en niet voor het wijzigen van de renderinglogica zelf.

PDF forms

PDF forms worden gerenderd door PdfTaskForm View.

Wanneer een XDP-formulier wordt weergegeven als PDF, wordt een FormBridge JavaScript™ toegevoegd door de FormsAugmenter-service. Met dit JavaScript™ (in het PDF-formulier) kunt u handelingen uitvoeren zoals het verzenden, opslaan of offline maken van formulieren.

In de AEM Forms-werkruimte communiceert de PDFTaskForm-weergave met de FormBridgejavascript, via een tussenliggende HTML die zich op /lc/libs/ws/libs/ws/pdf.html bevindt. De stroom is:

PDFTaskForm, weergave - pdf.html

Communiceert met window.postMessage / window.attachEvent('message')

Dit is de standaardmanier van communicatie tussen een bovenliggend frame en een iframe. De bestaande gebeurtenislisteners van eerder geopende PDF forms worden verwijderd voordat een nieuwe wordt toegevoegd. Bij deze bewerking wordt ook gekeken naar het schakelen tussen het tabblad Formulier en het tabblad Historie in de weergave met taakdetails.

pdf.html - FormBridgejavascript in de gerenderde PDF

Communiceert met pdfObject.postMessage / pdfObject.messageHandler

Dit is de standaardmanier voor communicatie met een PDF-javascript vanuit een HTML. In de PDFTaskForm-weergave wordt ook de platte PDF verzorgd en weergegeven.

OPMERKING

Het wordt niet aanbevolen de inhoud van de PDFTaskForm-weergave te wijzigen.

Nieuwe HTML Forms

Nieuwe HTML-formulieren worden gegenereerd door de NewHTMLTaskForm View.

Als een XDP-formulier wordt weergegeven als HTML met het pakket voor mobiele formulieren dat wordt geïmplementeerd op CRX, wordt ook extra FormBridge javascript toegevoegd aan het formulier, dat verschillende methoden voor het opslaan en verzenden van formuliergegevens beschikbaar maakt.

Deze javascript is anders dan de JavaScript-code die in de bovenstaande PDF forms wordt genoemd, maar heeft een soortgelijk doel.

OPMERKING

Het wordt afgeraden de inhoud van de weergave NewHTMLTaskForm te wijzigen.

Flex Forms en hulplijnen

Flex Forms wordt gerenderd door SWFTaskForm en de hulplijnen worden gerenderd door respectievelijk HTMLTaskForm Views.

In de AEM Forms-werkruimte communiceren deze weergaven met het SWF-bestand dat de flex-vorm/hulplijn vormt met behulp van een intermediair SWF-bestand dat zich op /lc/libs/ws/libs/ws/WSNextAdapter.swf bevindt

De communicatie gebeurt met swfObject.postMessage / window.flexMessageHandler.

Dit protocol wordt bepaald door WsNextAdapter.swf. Het bestaande flexMessageHandlersobject in het venster, van eerder geopende SWF-formulieren, wordt verwijderd voordat een nieuwe wordt toegevoegd. De logica houdt ook rekening met het schakelen tussen formuliertabblad en historietabblad in de weergave met taakdetails. WsNextAdapter.swf wordt gebruikt voor het uitvoeren van verschillende formulierhandelingen, zoals opslaan of verzenden.

OPMERKING

Het wordt niet aanbevolen om WSNextAdapter.swf of de inhoud van de weergave SwfTaskForm / HTMLTaskForm te wijzigen.

Toepassingen van derden (bijvoorbeeld Correspondence Management)

Toepassingen van derden worden gerenderd met de ExtAppTaskForm-weergave.

Communicatie van externe toepassingen naar de AEM Forms-werkruimte

AEM Forms-werkruimte luistert naar window.global.postMessage([Message],[Payload])

[Het ] bericht kan een tekenreeks zijn die is opgegeven als SubmitMessage| CancelMessage| ErrorMessage| actionEnabledMessagein het runtimeMapgebied. Toepassingen van derden moeten deze interface gebruiken om AEM Forms-werkruimte naar behoefte op de hoogte te stellen. Het gebruik van deze interface is verplicht, omdat de AEM Forms-werkruimte moet weten dat wanneer de taak wordt verzonden, zodat deze het taakvenster kan opschonen.

AEM Forms-werkruimte voor communicatie met toepassingen van derden

Als de directe actieknoppen van de werkruimte van AEM Forms zichtbaar zijn, wordt window.[External-App-Name].getMessage([Action]) aangeroepen, waarbij [Action] wordt gelezen van routeActionMap. De externe toepassing moet luisteren naar deze interface en vervolgens de AEM Forms-werkruimte via de API postMessage () op de hoogte stellen.

Een Flex-toepassing kan bijvoorbeeld ExternalInterface.addCallback('getMessage', listener) definiëren om deze communicatie te ondersteunen. Als de toepassing van derden het verzenden van formulieren via eigen knoppen wil verwerken, moet u hideDirectActions = true() in the runtimeMap opgeven en kunt u deze listener overslaan. Deze constructie is dus optioneel.

U kunt meer lezen over de integratie van toepassingen van derden met betrekking tot Correspondence Management op Correspondentiebeheer integreren in de AEM Forms-werkruimte.

Op deze pagina