AEM Forms aus Entwicklersicht

AEM Forms (ehemals Adobe LiveCycle)

AEM Forms ist eine vollumfängliche Plattform zur Erfassung, Verwaltung und Bearbeitung von Daten in Formularen und Dokumenten auf Basis verschiedener Formate. Mit AEM Forms lassen sich interne und externe Prozesse effizienter und kundenorientierter gestalten und der Datenfluss optimieren. Die Lösung beinhaltet ein Frontend für Formulare, ein Backend für Prozesse, diverse Dokumentendienste sowie eine Vielzahl an Schnittstellen.

Das Frontend

Back in the days: Das PDF-Formular

XDP Schickten

Die Schichten eines XDP Dokuments

Adobe ist Begründer des Portable Document Format (PDF) Standards und hat das Thema „digitale Formulare“ wie kein anderes Unternehmen geprägt. Ein digitales Formular war über Jahre hinweg gleichbedeutend mit einem Adobe PDF. Der Adobe Reader als PDF Viewer war der defacto Standard zur Anzeige von PDF Dokumenten. Dabei konnte ein PDF Formular deutlich mehr sein als ein flaches, statisches und ausdruckbares Formular. Denn im Jahr 2004 begründete Adobe mit der Adobe LiveCycle Technologie eine neue Ära in der Anzeige von Formularen und Verarbeitung von Formulardaten. Durch die Einführung des XFA Standards (XML Forms Architecture) ließen sich PDF Formulare mit Logiken und Validierungen mittels JavaScript oder FormCalc versehen. Durch die zusätzlich mögliche Datenübertragung via XML (Extensible Markup Language) ließen sich Formulare so umfangreich gestalten, dass sie richtigen Anwendung nahe kommen können. Diese PDF Formulare nennt man XDP Formulare.

Mit dem AEM Forms Designer steht dem Entwickler die Möglichkeit zur Verfügung, SOAP zu nutzen. So lässt sich über SOAP Daten zur Laufzeit nachladen.

Die Entwicklung der XDP-Formulare erfolgt auch heute noch mit dem von Adobe bereitgestellten „Designer“. Der Produktname Adobe LiveCycle Designer ist nach wie vor sehr geläufig und weit verbreitet, obwohl das Tool seit 2015 AEM Forms Designer heißt. Mit dem AEM Forms Designer lassen sich somit dynamische, interaktive und intelligente PDF Formulare erstellen, die sich dem Anwendungsfall anpassen und durch den User einfach mit dem Adobe Reader ausfüllen lassen.

AEM Forms Designer

Der AEM Forms Designer

XFA Formulare bieten mächtige Funktionalitäten, eine Einschränkung gibt es jedoch: sie funktionieren nur im Adobe Reader. Die mobile Adobe Reader App, wie auch andere PDF Viewer, unterstützen das XFA Format nicht oder nur sehr rudimentär.

Mit der steigenden Verbreitung von Smartphones und Tablets stieg daher der Bedarf an mobilen Formularen, die auf allen Geräten und in allen Browsern funktionieren und zudem in allen Bildschirmgrößen optimal angezeigt werden.

Daher entschied sich Adobe im Jahr 2014 für die Fusion von Adobe LiveCycle mit dem eigenen Web Content Management System AEM (Adobe Experience Manager). Seit AEM 6.0 ist die Forms Lösung nun integraler Bestandteil von AEM und trägt anstelle von „Adobe LiveCyle“ nun den Namen „AEM Forms“. Mit diesem technologischen Umzug ging Adobe einen großen Schritt in Richtung Webentwicklung von Formularen.

Was bietet eigentlich der Acrobat im Formularbereich?

Der Adobe Acrobat Pro bietet ebenso einfache Möglichkeiten zur Formularerstellung. Diese beruhen allerdings auf der AcroForms Technologie und nicht auf XFA. Mit AcroForms stößt man im Enterprise Umfeld schnell an seine Grenzen. So bietet AcroForm beispielsweise nicht die Möglichkeit, Formulardaten an ein Schema zu binden und XML Daten in einer so vorgegebenen Struktur wiederzuverwenden. Die Datenübergabe von und an Schnittstellen (zum Vorbefüllen, beim Absenden, oder Nachladen von Daten beim Ausfüllen) ist daher nur mit erhöhtem Aufwand realisierbar.

AEM Forms ist responsiv!

Das CMS Adobe Experience Manager bietet, erweitert um das Forms Modul, eine umfangreiche Plattform für die Entwicklung responsiver HTML5 Formulare. Mit sog. „Adaptive Forms“ stehen dem Entwickler jetzt sämtliche Möglichkeiten der modernen Webtechnologie zur Verfügung. Dazu gehören:

  • HTML5, CSS, Less/Sass, JavaScript und zahlreiche Frameworks/Bibliotheken wie z.B. jQuery, Bootstrap, requireJS, Grunt, Bower, NodeJS

Der Code für das Frontend der Formulare kann in bestehende Entwicklungsumgebungen (z.B. IntelliJ oder Eclipse) eingebunden werden und Tools wie Docker, Maven und Git, können für den Entwicklungsprozess verwendet werden.

Adaptive Forms Interface

Adaptive Forms Interface

Die Formularerstellung und Einbindung von Logik erfolgt bei Adaptive Forms nicht mehr im AEM Forms Designer, sondern in einem Webinterface von AEM Forms. Diese Oberfläche bietet dem Autor im sog. „RuleEditor“ ein umfangreiches Portfolio vordefinierter Logiken, so dass für einen großen Teil der Entwicklung keine Programmierkenntnisse erforderlich sind. Die Formularerstellung erfolgt überwiegend mittels Drag & Drop und Konfigurationen. Sofern in Formularen komplexere Regeln oder Abhängigkeiten erforderlich sind, lassen sich diese (wie auch im AEM Forms Designer) mittels JavaScript erweitern.

Die Datenverwaltung in Adaptive Forms erfolgt weiterhin mit XML. Seit der Version AEM6.3 Forms gibt es zusätzlich die Möglichkeit, das JSON Format zu verwenden.

Schnittstellen zu Drittsystemen lassen sich einfach nutzen. Seit der Version AEM6.2 Forms lassen sie sich in den Adaptive Forms als Datenservice global einbinden und vom Formularersteller sehr einfach und ohne Schnittstellenkenntnis konsumieren.

PDF ist tot, lang lebe PDF

Dem Einsatz von HTML Formularen stehen bei erster Betrachtung eine Reihe von möglichen Hindernissen entgegen:

  • HTML Formulare lassen sich nicht signieren
  • HTML Formulare lassen sich nicht revisionssicher archivieren
  • HTML Formulare lassen sich nicht ausdrucken

Adobe hat dafür eine Lösung. Denn mit AEM Forms lassen sich Formulardaten aus einem Adaptive Form wieder in ein PDF zurückzuführen. Dieses PDF kann anschließend digital signiert, ausgedruckt oder archiviert werden. Für die Erzeugung dieses sogenannten „Document of Records“ (DoR) bietet Adobe die folgenden Möglichkeiten:

  1. Generisches Document of Record: Das DoR-PDF wird auf Grundlage des adaptiven Formulars gerendert, d.h. alle entsprechend parametrisierten Felder werden aus dem Webformular in das PDF übertragen. Das Styling der Felder geschieht einmalig in einer XDP Vorlage. Die generische DoR Vorlage kann für alle Webformulare verwendet werden. Der Vorteil einer generischen DoR Vorlage liegt darin, dass die Vorlage für eine beliebige Anzahl an Formularen verwendet werden kann.
  2. XDP basiertes DoR: Durch die Bindung der Formularfelder eines Adaptive Forms mit einer spezifischen Designer XDP Vorlage (z.B. über ein XML Schema), lassen sich die gewonnen Daten aus dem Formular zurück in ein PDF führen. Hierfür ist allerdings eine redundante Pflege des Formulars erforderlich, da für jedes Adaptive Form eine Document of Record PDF-Vorage erstellt wird. Dieses Vorgehen bietet sich an, wenn z.B. aus Marketingsicht hohe Designanforderungen an das DoR PDF bestehen, da man jedes Feld im DoR Formular individuell grafisch anpassen kann.

Das Backend

Sobald man Daten im Frontend als XML gesammelt hat, können diese im Rahmen von Workflows weiterverarbeitet werden.

An dieser Stelle muss man zwischen zwei technischen Ausprägungen von AEM Forms unterscheiden:

Die Architekturmöglichkeiten von AEM Forms

Der JEE und OSGi gegenübergstellt

AEM Forms JEE

Auf der Java Plattform von AEM Forms stehen dem Entwickler eine Vielzahl an Funktionen zur Verfügung.

  • Assembler: Modifikation / Information / Extraktion von PDF-Dokumenten
  • Output: Zusammenführen von XML-Datensätzen und Vorlagen zur Erzeugung von PDF und Print-Dokumenten (Postscript / PCL / ZPL etc.) im Einzel- oder Batchablauf; Konvertierung und Validierung von PDF/A-Dokumenten
  • Forms: Zusammenführen von XML-Datensätzen und Vorlagen zu ausfüllbaren PDF-Formularen und Extraktion / Weiterverarbeitung der enthaltenen Daten; Aufbringen von dynamischen 1D oder 2D-Barcodes und deren Auswertung.
  • PDF Generator: Konvertierung verschiedenster Formate (Bilder, MS Office etc.) in PDF und von PDF zu diversen Formaten.
  • Reader Extensions: Freischaltung erweiterter Funktionen von PDF-Dokumenten für den Adobe Reader (z.B. Einbetten von Anlagen, Aufruf von Webservices, Speichern von veränderten Dokumenten etc.).
  • Workflow: Aufgabenzuweisungen an Anwender und Anwendergruppen zur Erfassung von Daten und Entscheidungen während laufender Prozesse; Web-Interface und Mobile App zur Ansicht und Bearbeitung von Aufgaben; Erinnerungen, Eskalationen, Deadlines.
  • Foundation-Services: „Kitt“, um Prozesse mit Daten anzureichern bzw. Daten an andere Systeme weiterzugeben: z.B. LDAP, Datenbankschnittstelle via JDBC, E-Mail, SOAP-Client, XSLT, FTP, Dateizugriffe etc.
  • Document Security (Digital Rights Management): Dynamisches Rechtemanagement, um den Zugriff auf Dokumenten rollenbezogen einzuschränken und nachzuverfolgen.
  • Digital Signatures: Bietet die Möglichkeit, PDF Dokumente mit Zertifikaten (u.a. auch qualifizierten Zertifikaten) zu versehen und somit eine rechtsgültige Unterschrift zu ermöglichen. Ebenso lassen sich diese auch auf Gültigkeit prüfen.
  • Neben diesem umfangreichen Portfolio an bestehenden Prozessschritten, gibt es zudem die Möglichkeit, in Java programmierte Komponenten (sog. DSCs) in den Prozess zu integrieren.

Übersicht der Architektur

AEM Forms JEE verfolgt in seiner Architektur den SOA Ansatz. Alle Services lassen sich dadurch direkt über eine API aufrufen. Das mitgelieferte Tool „Workbench“ bietet die Möglichkeit, die Aktivitäten grafisch – ankehnend an die Spezifikationssprache BPMN – zu Workflows zusammenzuführen und zu konfigurieren.

Dabei kommt ein JBoss, WebSphere oder Weblogic als Application-Server mit einer Datenbank (Oracle, MySQL oder MSSQL) zum Einsatz.

AEM Forms auf OSGi

Dank der Integration in AEM, lässt sich AEM Forms auch alleinstehend in der OSGi Variante (ohne JEE Server) betreiben.

In dieser stehen dem Entwickler das Workflowmanagementsystem zur Verfügung, das AEM bereits mitliefert. Seit AEM Forms 6.3 sind dort (mit Ausnahme vom Document Secruity) alle Funktionen aus der JEE Plattform integriert. Auch eine Aufgabenzuordnung (z.B. für Genehmigungsschritte) steht hier zur Verfügung.

Die meisten Anforderungen lassen sich mit dieser Variante umsetzen, so dass das JEE Workflowmanagementsystem oft nur noch bei besonders komplexen Prozessen, oder aus Migrationgründen betrieben werden muss.

Auch wenn sich alle OSGi Services in der JEE Variante nutzen lassen (AEM OSGi läuft wie erwähnt im JEE als eigenständige Applikation), ist es gut zu wissen, für welche der JEE nicht mehr nötig ist und in welcher Technologie dise umgesetzt sind. Hierzu zählen zum Beispiel folgende:

Services für OSGi

Adobe Sign Integration in Webformulare

Adobe Sign ist ein cloudbasierter Signaturdienst, der sich nahtlos in die adaptiven Formulare einbinden lässt. Je nach Anforderungen an die Rechtsverbindlichkeit, bietet der Service unterschiedliche Möglichkeiten, diese mit einer Unterschrift zu versehen. Adobe Sign bietet als eigenständige Plattform zusätzlich die Möglichkeit, Genehmigungen durchzuführen. Formulare aus der AEM Welt lassen sich hierher problemlos Übertragen.

Interactive Communication/Correspondece Management

Viele Kunden bevorzugen inzwischen eine digitale Kommunikation, aber Print und PDF sind nach wie vor wichtige Kommunikationskanäle. Etwa aus Compliance Gründen oder bei offline Anwendungsfällen. Adobe hat daher eine kanalübergreifende Lösung für Online, Offline, PDF und Druck geschaffen: Interactive Communications. Bei dieser Lösung arbeiten Fachanwender in einem einzigen User Interface für die Erstellung, Voransicht und Veröffentlichung von mobilen und responsiven Schreiben als auch PDF/Print Versionen davon. Dies ermöglicht Unternehmen, schnell und einfach mit den Kunden über den vom Kunden bevorzugten Kanal zu kommunizieren.

Schnittstellen über das DataModel definieren

Ein großes Thema in der Prozessabwicklung ist die Einbindung von Drittsystemen. AEM bietet seit der Version 6.3 ein eigenständiges Interface, in dem viele bekannte Schnittstellen wie SOAP, REST, SQL, SharePoint etc. genutzt werden können. Sind diese einmal definiert, können sie von Formulardesignern einfach in das Formular eingebunden werden, ohne dass Kenntnisse über die Authentifizierung oder Technologie der Services benötigt werden. Eigene Schnittstellen lassen sich im OSGi selbständig entwickeln.

Adobe Analytics

Ein weiterer Clouddienst, der nun zur Verfügung steht, ist Adobe Analytics, in dem sich der tatsächliche Nutzen der Formulare messen und auswerten lässt. Durch die Webbasierte Lösung bekommt nun auch solche man Informationen, die Probleme beim ausfüllen den Formular verursachen. Somit lässt sich eine deutlich umfangreichere und genauere Analyse durchführen.

Adobe Target

Neben der Auswertung (Adobe Analytics), lässt sich auch ein gesteuertes ausliefern der Formulare über Adobe Target realisieren. Hiermit lassen sich unter anderem A/B Test umsetzen. Auch personalisierter Content lässt sich so einfach, zielorientiert steuern.

Zusammengefasst

Als Formularlösung bietet Adobe neben dem weiter bestehenden PDF, einen würdigen Nachfolger für das Formularmanagement. Durch AEM Forms lassen sich bereits viele Konfigurationen im Interface „zusammen klicken“. Kommt man hier an seine Grenzen, stehen einem Entwickler viele Möglichkeiten der Webtechnologie zur Verfügung. Die Abgrenzung von Entwickler und Formularauthor kann noch sinnvoller gestaltet werden und Kompetenzen noch effektiver ausgebaut werden.

Versionsübersicht von AEM6.x

Adobe veröffentlicht in der Regel einmal pro Jahr eine neue Version von AEM Forms. Die nachfolgende Tabelle zeigt eine Übersicht der letzten Versionen inkl. der Supportlaufzeiten. AEM6.0 war ein sogenanntes Major Release. Die darauf folgenden Releases waren Upgrade Releases auf Basis der vorangegangenen Code Basis und enthielten neue und verbesserte Funktionalitäten, Feature Packs, Hot Fixes und Service Pack Releases.  

 

Version

Veröffentlichung

Ende des Core Supports

Ende des Extended Supports

AEM6.0 Forms

März 2014

31.03.2018

31.03.2020

AEM6.1 Forms

Mai 2015

31.05.2018

31.05.2020

AEM6.2 Forms

April 2016

30.04.2019

30.04.2021

AEM6.3 Forms

April 2017

30.04.2020

30.04.2022

AEM6.4 Forms

April 2018

30.04.2021

30.04.2023