1. Einleitung
1.1. Motivation
Am 15.11.2001 wurde der Mikroprozessor 30 Jahre alt1 und am 13.01.2001 das World Wide Web 10 Jahre2. Betrachtet man rückblickend die exponentielle Entwicklung, die dieses Medium in der relativ kurzen Zeit sowohl quantitativ als auch qualitativ genommen hat, kann man eine Vorstellung davon entwickeln, welche Entwicklungssprünge wir in Zukunft erleben werden. Allein im Jahr 2001 wurden 195 RFC veröffentlicht3, die die Entwicklung von Webanwendungen direkt oder indirekt beeinflussen. Diese Situation ist freilich nicht ungewöhnlich, zumal im IT – Bereich. In ihrer Massivität stellt die Entwicklung jedoch eine neue Qualität dar, der mit adäquaten Methoden begegnet werden muss. Das der präferierte Ansatz zur Beherrschung der Situation selbst ein Standard ist, erscheint nur auf den ersten Blick seltsam: XML ist mit dem Anspruch entwickelt worden, als eine Art Metastandard zunächst die Syntax zu vereinheitlichen. Das dieses Ziel auf den ersten Blick eher bescheiden ausfällt, darf dessen enormen Nutzen nicht marginalisieren.
Trotz der Bemühung einer Vereinheitlichung ist vor allem im Onlinebereich eine stetige Zunahme der Komplexität von Anwendungen zu verzeichnen, zumal auch ein Metastandard wie XML implementiert und beherrscht werden muss. Dies ist vor allem der vielerorts angestrebten vollständig browserbasierten Bedienung von Unternehmensanwendungen zuzuschreiben.
[...]
Inhaltsverzeichnis
1. Einleitung
1.1. Motivation
1.2. Ziel der Arbeit
1.3. Kapitelübersicht
2. Die Applikation „handyEngine“
2.1. Umfeld und Intention
2.2. Funktionsumfang
2.2.1. Nutzer - Interface
2.2.2. Admin - Interface
3. XML und Substandards
3.1. Ziele und Begriffe
3.1.1. Entwicklung
3.1.2. Ziele von XML
3.1.3. wellformed XML
3.1.4. valid XML
3.1.5. Namespaces
3.2. Dokumenttypdefinition
3.2.1. DTD
3.2.2. XML Schema
3.3. Parser
3.3.1. Begriffsdefinition
3.3.2. SAX
3.3.3. DOM
3.3.4. Einbindung
3.4. XPath
3.5. XSL
3.5.1. Transformations
3.5.2. Formatting Objects
4. Architektur von Webapplikationen
4.1. Evolution
4.2. n-Tier Konzeption
4.2.1. Einordnung
4.2.2. Data- / Backend Tier
4.2.3. Application Server Tier
4.2.4. Presentation Layer
4.3. Model – View – Controller
5. Implementierung der Applikation „handyEngine“
5.1. Vorbemerkungen
5.1.1. Abgrenzung
5.1.2. Runtime Environment
5.2. Design
5.2.1. Model
5.2.2. Controller
5.2.3. View
5.3. Projektstatus
6. Ausblick
6.1. WebServices
6.1.1. Herausforderung
6.1.2. SOAP
6.1.3. WSDL
6.1.4. UDDI
6.1.5. Schlussfolgerung
6.2. komponentenbasierte Frameworks
6.2.1. J2EE
6.2.2. .NET
6.2.3. SunONE
7. Schlussbetrachtung
Zielsetzung und thematische Schwerpunkte
Die vorliegende Arbeit zielt darauf ab, den Einsatz moderner XML- und XSL-Technologien innerhalb der objektorientierten Entwicklung von Internet-Applikationen anhand einer praktischen Referenzanwendung („handyEngine“) zu verdeutlichen und deren Vorteile für die Strukturierung und Flexibilität von Webanwendungen darzulegen.
- Grundlagen von XML, DTDs und XML Schema zur Datenmodellierung
- Einsatz von XML-Parsern (SAX, DOM) und XPath für den Datenzugriff
- Transformation von Daten mittels XSLT für medienunabhängiges Design
- Architekturkonzepte (n-Tier, Model-View-Controller) für Webapplikationen
- Integration von Web Services und Komponentenframeworks (J2EE, .NET, SunONE)
Auszug aus dem Buch
3.3. Parser
In den vorangegangenen Kapiteln ist bereits mehrfach von Parsern die Rede gewesen, beispielsweise in Zusammenhang mit gültigem XML von „validierenden Parsern“. In Kapitel 3.2.1 wurden als Ziele von XML die einfache Erstellung sowie die Möglichkeit, das Ergebnis für Menschen lesbar zu halten, angegeben. Dieser Hintergrund hat dazu geführt, dass als Medium für den Austausch von Daten im XML Format bevorzugt Textdateien genutzt werden. Auch in Fällen, die eine Übertragung als Stream oder ähnlichem vorsehen, handelt es sich letztendlich um Texte. Die gute Lesbarkeit für den Menschen geht mit dem Nachteil einher, dass sich IT – Systeme in der Regel schwer tun, strukturierte Daten genuin in Form von Texten zu verarbeiten. Vielmehr wird meist eine optimierte Repräsentation der Struktur im Speicher des Systems verwaltet, die einen schnellen Zugriff auf alle Elemente eines Dokuments zulässt. Um diesen Medienbruch technisch zu realisieren, kommen Parser zum Einsatz, wobei hier vor allem der Weg vom Text in den Speicher des Systems im Vordergrund steht.
Die zentrale Anforderung an den Parser ist die Unterscheidung der Strukturinformationen, die als Tags mit spitzen Klammern gekennzeichnet sind, von den eigentlichen Daten. Der Parser läuft den Text deshalb zunächst seriell durch und trennt dabei die beiden genannten Bestandteile. Die einzelnen Elemente werden so aus dem textlichen Medium gelöst und in der, von den Tags bezeichneten, Form hierarchisch geordnet.
Über diese Grundanforderung hinaus, muss ein Parser definierte „Entities“ substituieren, um beispielsweise Sonderzeichen korrekt zu erkennen („ü“ = „ü“) und die eingelesene Struktur gegen eine zugeordnete Dokumenttypdefinition (zum Beispiel ein XML Schema) validieren. Sollte die einzulesende Struktur syntaktische Fehler enthalten, also beispielsweise nicht geschlossene Tags, muss der Parser dies als Fehler melden und die Verarbeitung abbrechen.
Bei der Implementierung dieser Softwarekomponente haben sich zwei Typen durchgesetzt, die im Folgenden kurz beschrieben werden.
Zusammenfassung der Kapitel
1. Einleitung: Motivation und Zielsetzung der Arbeit, den Einsatz von XML-Standards in Webanwendungen anhand eines Praxisbeispiels zu erläutern.
2. Die Applikation „handyEngine“: Beschreibung der Referenzanwendung, deren Umfeld, Funktionsumfang und das Interface für Nutzer und Administratoren.
3. XML und Substandards: Fundierte Darstellung der XML-Grundlagen, Dokumenttypdefinitionen, Parsing-Methoden sowie der Nutzung von XPath und XSLT.
4. Architektur von Webapplikationen: Historische Entwicklung und moderne Konzepte wie die n-Tier-Architektur und das Model-View-Controller-Paradigma.
5. Implementierung der Applikation „handyEngine“: Detailbeschreibung der technischen Realisierung des MVC-Designs unter Verwendung von Java-Servlets und XSLT.
6. Ausblick: Diskussion aktueller Trends wie WebServices und ein Vergleich moderner Frameworks wie J2EE, .NET und SunONE.
7. Schlussbetrachtung: Zusammenfassende Bewertung der erreichten Modularität und Investitionssicherheit durch offene XML-Standards.
Schlüsselwörter
XML, XSLT, Webanwendungen, handyEngine, n-Tier-Architektur, Model-View-Controller, Parser, SAX, DOM, XPath, Java-Servlets, WebServices, Lotus Domino, J2EE, .NET
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit befasst sich mit dem Einsatz aktueller XML- und XSL-Technologien in der objektorientierten Entwicklung von Webapplikationen.
Was sind die zentralen Themenfelder?
Die Schwerpunkte liegen auf XML als Metasprache, der Transformation mittels XSLT, Web-Architekturmustern wie MVC sowie der praktischen Implementierung in einem Unternehmensumfeld.
Was ist das primäre Ziel oder die Forschungsfrage?
Das Ziel ist es, den „Best Practice“-Ansatz bei der Nutzung von XML-Standards an einem konkreten Praxisbeispiel (handyEngine) zu veranschaulichen.
Welche wissenschaftliche Methode wird verwendet?
Es handelt sich um eine praxisorientierte Informatik-Abschlussarbeit, die eine Fallstudien-Architektur (Referenzapplikation) analysiert und die technologische Umsetzung detailliert beschreibt.
Was wird im Hauptteil behandelt?
Der Hauptteil behandelt die theoretischen Grundlagen (XML, Parser, XSLT), die Architektur von Webapplikationen (n-Tier, MVC) und die spezifische Implementierung der handyEngine.
Welche Schlüsselwörter charakterisieren die Arbeit?
Die zentralen Schlagworte sind XML, XSLT, MVC-Pattern, Webapplikationen, Java-Servlets und verteilte Systeme.
Wie wurde das Problem der Session-Verwaltung in der handyEngine gelöst?
Die handyEngine verwendet eine URL-Parameter-Steuerung, um Zustände zu reproduzieren, und nutzt JavaBeans für die Pufferung von Daten im Arbeitsspeicher, da die Anwendung zustandslos über HTTP arbeitet.
Warum wird in der handyEngine das MVC-Design-Pattern eingesetzt?
MVC wird verwendet, um eine saubere Trennung von Geschäftslogik, Datenhaltung und Präsentation zu erreichen, was die Wartbarkeit erhöht und es erlaubt, das Erscheinungsbild (View) flexibel durch XSLT-Templates zu steuern.
- Quote paper
- Nikolaus Pohle (Author), 2002, Einsatz aktueller XML/XSL - Technologien im Rahmen der objektorientierten Entwicklung von Internet Applikationen, Munich, GRIN Verlag, https://www.grin.com/document/4988