Verwendung
Im Folgenden soll die Verwendung des x4:framework an einer typischen zu implementierenden Applikation erläutert werden.

Die obige Abbildung zeigt die 3-schichtige Architektur der Applikation. Ein Ziel dieser Architektur ist es, die drei Aufgaben Präsentation, Geschäftslogik und Datenhaltung voneinander zu trennen. Folglich übernimmt jede Schicht genau eine dieser Aufgaben.
Hinzu kommt, dass es möglich sein soll, einen Web-Browser einzusetzen. Damit wird es notwendig, einen Präsentations-Server einzubinden. Es ergibt sich also folgender Aufbau:

Client: Der Benutzer soll die Möglichkeit haben, über einen Web-Browser, eine Rich Client Anwendung oder über ein Handy auf den Datenbestand zuzugreifen. Außerdem soll — sofern möglich — ein Caching der Daten stattfinden und die Oberfläche Rechte-sensitiv gestaltet sein.
Präsentations-Server: Der Präsentations-Server sorgt für die Präsentation der Daten, in diesem Fall für die Ausgabe der Seiten für den Web-Browser und die Weiterleitung der Anfragen an den Applikations-Server. Hier findet neben dem "rendern" von Inhalten eine Rechteprüfung und Caching statt.
Applikations-Server: Der Applikations-Server übernimmt die Prüfung der Rechte in letzter Instanz, sorgt für die Verarbeitung der Geschäftsprozesse und regelt den Zugriff auf Datenbanken (O/R-Mapping, JDBC). Der Zugriff auf Datenbanken ist Hersteller-neutral.
Datenbank: Sorgt für die persistente Haltung der Daten.
Soweit der grundsätzliche Aufbau der Applikation inklusive der Zuordnung der Verantwortlichkeiten zu den einzelnen Bereichen.
Identifizierien lässt sich hier, dass über alle Bereiche hinweg bestimmte Komponenten benötigt werden, die einzelnen Aufgaben übernehmen. Hinzu kommt, dass zu der Geschäftslogik nicht nur Geschäftprozesse sondern auch Geschäftsobjekte (die Daten, mit denen gearbeitet wird) gehören. Diese müssen über alle Schichten hinweg transportiert und verwendet werden.
In welcher Art und Weise kommt jetzt aber das x4:framework zum Einsatz um dieses Vorhaben schnell und einfach in die Tat umzusetzen? Widmen wir uns zunächst den Geschäftsobjekten und wie uns das Framework bei der Implementierung behilflich sein kann.