Die meisten Browser sollen irgendwann einmal XForms unterstützen, aber bis es so weit ist, ist die einzige verlässliche und skalierbare Methode für die Implementierung eine serverseitige Verarbeitung.
Was sind XForms?
XForms sind eine XML-Anwendung, die die nächste Generation von Formularen im Internet darstellt. Sie teilen traditionelle XHTML-Formulare in drei Teile auf:
Diese Aufteilung erlaubt die Implementierung starker Typisierung, Wiederverwendbarkeit, Trennung von Inhalt und Darstellung sowie Plattform-Unabhängigkeit. XForms beseitigt die Notwendigkeit des Scripting fast vollständig. Es dient als Schnittstelle für Online-Interaktionen zwischen einem Benutzer und einem anderen (üblicherweise entfernten) Agenten. Diese Interaktion wird durch einen XForms-Prozessor ermöglicht, ein Programm, das die XForms-Spezifikation implementiert. Eine solche Implementierung ist Chiba. Hier die einzelnen Schritte, die man bei der Arbeit mit Chiba durchführen muss. Man beachte, dass es bislang noch keinen Industriestandard für die Java-ähnlichen APIs von XForms zur XML-Verarbeitung (JAXP, JAXM etc.) gibt, weshalb die interne API von Chiba zukünftigen Änderungen unterworfen sein kann.
Das Formular-Modell
Zuerst muss man ein Formular-Modell erstellen, das die Logik des Formulars beschreibt (Listing A). Dieses Modell spezifiziert, welche Felder erforderlich sind, deren Format und an welche XML-Elemente oder Instanz-Daten sie gebunden sind. Das Beispielformular ist einfach. Es besteht aus einer Listbox mit mehreren Wahlmöglichkeiten und einem Textfeld. In einem Webbrowser ist die bequemste Möglichkeit der Darstellung dieser Steuerelemente eine Auswahlliste
Abbildung A
In dem Modell kann man optionale Default-Instanz-Daten erkennen, die im Element enthalten sind. Mit dieser Instanz wird der XForms-Prozessor initialisiert. Nachfolgend wird auch die andere Möglichkeit, die Instanz an den Prozessor zu übergeben erläutert, nämlich direkt von Java aus als DOM-Knoten. Falls die Instanz nicht initialisiert ist, sollte das Formular leer dargestellt werden.
Anzeige des Formulars
Als nächstes können das Formular angezeigt und die vom Benutzer eingegebenen Daten verarbeitet werden (Listing B). Dafür wird ein kleines Servlet geschrieben, welches das Formular mit der Methode doGet() erstellt und die Benutzerdaten in einem DOM-Dokument sammelt, wenn der Benutzer das Formular mit POST – also der Methode doPost() – abschickt.
Eines der primären Ziele des Chiba XForms-Frameworks ist eine Flexibilität, die auf Java-Interfaces beruht. Man muss dabei nur diejenigen Interfaces implementieren, die den eigenen Anforderungen am besten entsprechen. Ein Benutzer möchte vielleicht ein XForms-Modell in einer separaten Datei speichern, ein anderer vielleicht in einer Datenbank. Diese Flexibilität ist der Grund für die Verwendung von Connectors in Chiba. Wir nutzen einen BasicFileSystemConnector – einen Connector, der das XFormsConnector-Interface implementiert. Einer der Nachteile der Flexibilität von Chiba ist, dass die Konstruktion einer Instanz recht knifflig sein kann, weil höhere Flexibilität immer höhere Komplexität mit sich bringt. In diesem speziellen Beispiel wurde eine Chiba-Instanz mithilfe mehrerer zusätzlicher Wrapper-Klassen konstruiert, statt einfach ein Objekt zu erzeugen.
Page: 1 2
Der Büro- und Gamerstuhl erkennt Gewicht der Nutzer und unterstützt Lendenwirbel und Nacken in jeder…
Der Analyst Ming-Chi Kuo geht von einem Preis zwischen 2000 und 2500 Dollar aus. Trotzdem…
Kaspersky meldet starke Zunahme mobiler Banking-Trojaner. Insgesamt 33,3 Millionen Angriffe auf mobile Nutzer im Jahr…
Optische Schalter mit Flüssigkristallspiegeln sollen die Datenpakete so stark verkleinern, dass mehr Daten durchs Netz…
Jahresbilanz: Laut Bitkom wurden 61 Prozent Opfer von Cybercrime. Durchschnittlich läge der Schaden bei 219…
Künstliche Intelligenz (KI) ist längst nicht mehr nur ein Trend, sondern ein zentraler Bestandteil der…