Datenschutz-Hinweis: Diese Website nutzt Cookies für Funktions-, Komfort- und Statistikzwecke. Um eine detaillierte Beschreibung der verwendeten Cookies einzusehen und bei Bedarf deren Speicherung anpassen, besuchen Sie bitte unsere Datenschutzerklärung.

English

Neues von SoftProject

Ab jetzt keine Neuigkeiten mehr verpassen! 
Melden Sie sich zu unserem kostenlosen X4 Newsletter an.

Lernen Sie uns persönlich kennen!

23.04.2018 – 27.04.2018 HANNOVER MESSE

Expertentipp: X4 Activities-Anwendungen dynamisieren

Mit dem neuen X4 Web Designer können Sie statische Konfigurationen für X4 Activities-Anwendungen im Handumdrehen erstellen und bearbeiten. Doch in der Praxis werden oft dynamische Konfigurationen benötigt, etwa um eine rollenspezifische oder mehrsprachige Portal-Anwendung aufzubauen. Wie Sie die Vorteile des X4 Web Designers nutzen können und gleichzeitig Ihr Portal zur Laufzeit konfigurieren können, erfahren Sie in diesem Expertentipp.

Tobias Augenstein


Software-Entwickler und X4 Activities-Experte bei SoftProject

Beim Erstellen einer X4 Activities-basierten Web-Anwendung mit dem X4 Web Designer steht eine Reihe von JSON-Konfigurationsdateien im Mittelpunkt. Diese Dateien bestimmen das Aussehen und Verhalten u.a. des Navigators, der Aktionsleiste und vieler weiterer Komponenten innerhalb Ihrer neuen Web-Portalanwendung und lassen sich in den grafischen Editoren des X4 Web Designers schnell erstellen und komfortabel bearbeiten.

Wenn jedoch einzelne Knoten im Navigationsbaum oder Schaltflächen in der Aktionsleiste abhängig von Berechtigungen ausgeblendet oder Inhaltselemente für eine mehrsprachige Benutzeroberfläche internationalisiert werden sollen, dann benötigen wir mehr Flexibilität, die uns eine statische Konfiguration nicht bietet. Wir möchten aber die Konfigurationsdateien weiterhin im X4 Web Designer grafisch bearbeiten.

Von einer statischen zur dynamischen Konfiguration

X4 Activities

Der Schlüssel zur Lösung findet sich diesmal nicht im X4 Web Designer, sondern im Back-end – genauer im X4 ESB Server. Dieser Enterprise Service Bus führt grafisch modellierte Back-end-Prozesse (X4-Prozesse) automatisiert aus.

Um Konfigurationsdateien dynamisch zu machen, müssen wir diese über den X4 ESB Server „umleiten“. Dazu modellieren wir wie im Folgenden beschrieben einen X4-Prozess, stellen diesen als ReSTful Service auf dem X4 ESB Server via HTTP-GET bereit und verknüpfen schließlich den Service mit unserer Web-Anwendungskonfiguration.

Wichtig vorab zu wissen ist noch, dass Sie im X4 Web Designer zwar mit JSON-Konfigurationsdateien arbeiten, beim Bauen Ihrer Web-Anwendung wird jedoch jede Konfigurationsdatei auch in XML umgewandelt und im Repository-Projektordner unter WebResources/target/… abgelegt.

X4-Prozess zum Modifizieren der Konfiguration

Unser X4-Prozess liest im ersten Schritt das über den X4 Web Designer erzeugte XML-Konfigurationsdokument ein. Im einfachsten Fall ziehen Sie dazu die entsprechende XML-Datei im X4 Designer per Drag & Drop aus dem target-Ordner in Ihren X4-Prozess. Diese Konfigurationsdatei wird typischerweise durch ein XSL-Mapping im nächsten Prozess-Schritt erweitert bzw. punktuell modifiziert.

Tipp: Alternativ kann für den Zugriff auf die Konfigurationsdatei auch der File System Adapter oder innerhalb eines XSL-Mappings die document()-Funktion sinnvoll sein.

Typische Anwendungsfälle für dynamische Web-Anwendungen

Der genaue Aufbau und die Funktionalität unseres Prozesses hängt stark vom jeweiligen Anwendungsfall ab. Betrachten wir im Folgenden drei typische Anwendungsarten.

Anwendungsfall 1: Filtern von Einträgen der Benutzeroberfläche

Mit Hilfe eines XSL-Mappings können einzelne Konfigurationseinträge wie z. B. Navigatorknoten abhängig von fachlichen Kriterien (wie beispielsweise Berechtigungen je nach Nutzer/Rolle) aus der Konfiguration zur Laufzeit entfernt werden. Meist eignen sich ID-Attribute hierfür am besten zum Identifizieren der Einträge.

X4-Prozess zur Modifikation einer bislang statischen Konfiguration

Anwendungsfall 2: Ersetzen oder Ergänzen von Oberflächentexten

Um Textinhalte von Konfigurationseinträgen zu ändern – etwa zur Internationalisierung oder für dynamische URLs – sind XSL-Mappings ebenfalls die ideale Wahl. Dazu hinterlegen Sie in der statischen Konfigurationsdatei am Besten zunächst ein Standardwert (Default).

Tipp: Sobald es hierbei um eine größere Zahl von Anpassungen handelt, bietet es sich an, die Zuordnung von Knoten zu dynamischem Inhalt nicht direkt in der Logik des XSL-Mappings zu definieren, sondern in einem separaten XML-Dokument.

Die Internationalisierung (I18n) von GUI-Elementen ist z. B. wesentlich übersichtlicher, wenn alle sprachabhängigen Inhalte in ein XML-Dokument ausgelagert – jede I18n-Eigenschaft mit eine eindeutigen Knoten-Schlüssel. Dieses Lookup-Dokument kann dynamisch im Datenmapping ausgewertet werden.

Anwendungsfall 3: Zusammenführen von Konfigurationen

Komplexere Konfigurationen sollten in mehrere logische Einheiten aufgeteilt und in separaten Dateien gepflegt werden – insbesondere wenn Teile davon mehrfach benötigt werden oder. Auch wenn sich Teilbereiche mit nur leicht abweichenden Inhalten wiederholen, empfiehlt es sich, diese Teile in eine separate Konfiguration auszulagern und dynamisch an den entsprechenden Stellen einzufügen, analog zu Anwendungsfall 2.

Für externe Konfigurationen definieren Sie am besten Platzhalter-Knoten, damit die Positionen nicht nur in der Prozess-Logik, sondern auch im Editor für die Basis-Konfiguration nachvollziehbar sind.

Die Umleitung vollenden: Prozess bereitstellen und verknüpfen

Wenn nun Ihr X4-Prozess die angepasste Konfiguration wie gewünscht erzeugt, wird der X4-Prozess anschließend als ReSTful Webservice via HTTP(S) auf dem X4 ESB Server bereitgestellt – typischerweise per HTTP-GET. Dies können Sie komfortabel im grafischen X4 Webservice Configuration Editor per Drag & Drop erledigen – im einfachsten Fall unverändert mit Output-Modus HTTP-Content, siehe Handbuch X4 Developer Guide. 

Unser X4-Prozessergebnis ist nun über eine bestimmte URL verfügbar, die im letzten Schritt nur noch im X4 Web Designer an der entsprechenden Stelle hinterlegt werden muss.

Wenn Sie beispielsweise eine Navigator-Konfigurationsdatei config.nav.x4p.xml dynamisiert haben, so hinterlegen Sie die Service-URL innerhalb der zentralen Application Config Ihrer Web-Anwendung z.B. in FeldNavigator URL., bei anderen Konfigurationsdateien (siehe Handbuch X4 Developer Guide) analog vorgehen.

Die ursprüngliche Konfigurationsdatei bleibt damit weiterhin im X4 Web Designer editierbar und wird ab jetzt durch den X4-Prozess Ihrer Web-Anwendung automatisch dynamisch angepasst.

Fazit

Durch die Kombination von grafischen Werkzeugen wie dem X4 Web Designer und der Mächtigkeit des X4 ESB Server lassen sich auch komplexe Aufgabenstellungen für dynamische Web-Anwendungen lösen. Im Vordergrund des hier beschriebenen Ansatzes steht dabei die Trennung von Struktur, Inhalt und der Logik Ihrer Web-Anwendung. Damit lässt sich die Einfachheit der grafischen Editoren im X4 Web Designer mit der nahezu unbegrenzten Flexibilität von X4-Prozessen kombinieren.

So wird die Entwicklung von X4 Activities-basierten Web-Anwendungen übersichtlicher, deren Wartbarkeit wird verbessert und zudem wird die Wiederverwendbarkeit insbesondere bei komplexen und umfangreichen Konfigurationen erhöht. 

Neugierig geworden? Jetzt die X4 Suite in der neuen Version 5.0 mit dem kompletten Funktionsumfang 30 Tage kostenlos testen.

Weiterführende Informationen


Alle Infos zur X4 Suite

Jetzt bei "Mein X4" registrieren und das Dokumentationspaket zur X4 Suite inklusive dem Handbuch zum X4 Web Designer und dem X4 Developer Guide herunterladen.

Release 5 der X4 Suite

Fünf Gründe, warum Sie die neueste Version 5.0 der X4 BPM Suite nutzen sollten, um Ihre Geschäftsprozesse zu automatisieren.

Zurück

Über uns


SoftProject GmbH

Die SoftProject GmbH ist ein unabhängiges Software-Haus mit Hauptsitz in Ettlingen bei Karlsruhe. Das im Jahr 2000 gegründete Unternehmen wächst überdurchschnittlich und beschäftigt heute rund 70 Mitarbeiter. Mehr als 300 Unternehmen weltweit setzen mittlerweile auf die SoftProject-Technologie „Made in Germany“.

Als Spezialisten für die Digitalisierung und Automatisierung von Geschäftsprozessen bietet SoftProject Lösungen und Services rund um ihr Kernprodukt, die X4 Suite. Zum Leistungsspektrum zählen außerdem Consulting, Training, Support sowie Hosting für Lösungen auf Basis der X4-Technologie.

© 2018 SoftProject GmbH