09.03.2014 Aufrufe

Extensible Markup Language (PDF) - IT-Dienstleistungszentrum Berlin

Extensible Markup Language (PDF) - IT-Dienstleistungszentrum Berlin

Extensible Markup Language (PDF) - IT-Dienstleistungszentrum Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

ç XML-Umfeld Weitere erwähnenswerte<br />

Bibliotheken sind Xalan (ein<br />

XSLT-Processor) und FOP (ein XSL-<br />

Formatter), beide von ASF FOP kann<br />

aus der gleichen XSL-Eingabe wahlweise<br />

<strong>PDF</strong>, PostScript, PCL, MIF, RTF<br />

oder formatierten Text erzeugen<br />

Web-Anwendungen<br />

Web-Anwendungen sind Anwendungen<br />

im Internet oder Intranet, die einen<br />

Internet-Browser für die Darstellung der<br />

Benutzerschnittstelle verwenden Die<br />

Anwendung selbst läuft dabei auf dem<br />

Web-Server Die Aufgabe eines Web-<br />

Servers war ursprünglich nur die Bereitstellung<br />

der statischen HTML-Seiten<br />

Schon früh wurde die Möglichkeit einer<br />

Benutzerinteraktion benötigt Der Benutzer<br />

konnte im Internet-Browser ein<br />

Formular ausfüllen und abschicken Auf<br />

der Server-Seite wurde das Common<br />

Gateway Interface (CGI) geschaffen,<br />

um die vom Benutzer abgeschickten<br />

Daten durch externe Programme (CGI-<br />

Skripte) auswerten zu können Nach<br />

und nach kamen andere Lösungen hinzu,<br />

die Seiten wurden zunehmend dynamisch<br />

und konnten schließlich als<br />

Benutzerschnittstellen für komplexe<br />

Anwendungen eingesetzt werden<br />

Eine der bekanntesten und leistungsfähigsten<br />

neuen Lösungen sind die Java<br />

Servlets und die davon abgeleiteten Java<br />

Server Pages (JSP) Servlets sind in Java<br />

geschriebene Erweiterungen der Web-<br />

Server-Funktionalität, die in der virtuellen<br />

Java-Maschine (JVM) des Web-Servers<br />

ablaufen Die meisten Web-Server<br />

haben die Fähigkeit, Servlets zu nutzen<br />

oder lassen sich einfach in dieser Hinsicht<br />

erweitern, zB durch die Integration<br />

von Tomcat von ASF<br />

DB<br />

Servlet<br />

JVM<br />

Web-Server<br />

Formulardaten<br />

Name: Hinz<br />

Vorname: Kunz<br />

...<br />

<br />

<br />

<br />

<br />

HTML-Seite (Ergebnis)<br />

Abbildung 5: Java Servlets<br />

Browser<br />

Servlets werten die Eingaben des Benutzers<br />

aus, leiten die Verarbeitung eventuell<br />

an andere Programme, wie zB Datenbanken,<br />

weiter und generieren dann<br />

eine neue HTML-Seite, die dem Benutzer<br />

angezeigt wird (Abbildung 5) Das<br />

Generieren von HTML-Seiten mit Hilfe<br />

von Java ist jedoch nicht effektiv, da in<br />

Java HTML wie normale Zeichenketten<br />

behandelt werden und die Ausgabe mit<br />

Hilfe von normalen Eingabe-/Ausgabe-Methoden<br />

erfolgt Das ist vor allem<br />

für die Pflege des statischen Teils der<br />

Seiten keine gute Lösung JSP-Seiten<br />

sind eine Weiterentwicklung von<br />

Servlets Sie enthalten den statischen<br />

Teil der Seiten als HTML im Klartext,<br />

während der dynamische Teil mit Hilfe<br />

von Java erzeugt wird Web-Anwendungen<br />

bestehen in der Regel aus mehreren<br />

Servlets und JSP-Seiten<br />

Apache Cocoon<br />

Zunächst soll unabhängig von Cocoon<br />

die Frage beantwortet werden, was es<br />

bedeutet und was benötigt wird, um<br />

Web-Anwendungen auf XML-Basis zu<br />

schreiben Das Wichtigste ist, dass die<br />

Information in einer solchen Anwendung<br />

in Form von XML-Daten vorliegt<br />

Neben den statischen Daten werden<br />

auch dynamische Daten, die aus Datenbanken<br />

und anderen Informationssystemen<br />

stammen können, temporär in<br />

XML zusammengestellt, um dann<br />

genauso wie die statischen Daten weiterverarbeitet<br />

zu werden Hier kommt der<br />

große Vorteil von XML zum Tragen,<br />

dass sie sich gleichermaßen zum Darstellen<br />

von Textdokumenten wie auch<br />

reinen Daten eignet<br />

Um die Information dem Benutzer zu<br />

präsentieren, ist es nötig, diese in eine<br />

Form umzuwandeln, die ein Internet<br />

Browser versteht – und das ist HTML<br />

Dafür werden die Daten aus dem XML-<br />

Dokument und die Formatierungsinformationen<br />

aus dem XSLT-Stylesheet<br />

mit Hilfe eines XSLT-Processors zusammengefügt<br />

Das Stylesheet muss entsprechende<br />

Regeln enthalten, damit<br />

dabei XHTML (und dann HTML, su)<br />

entsteht Neuere Browser verstehen auch<br />

direkt XML und besitzen einen eingebauten<br />

XSLT-Processor (IE ab 55,<br />

Netscape ab 60) In diesem Fall wird<br />

das XSLT-Stylesheet dem Browser direkt<br />

zur Verfügung gestellt (Abbildung<br />

6) Der Nachteil dieser Lösung ist, dass<br />

sie zum einen nur die neueren Browser<br />

beherrschen, zum anderen, dass die<br />

Implementierungen in einigen Browsern<br />

nicht standardkonform sind<br />

<br />

<br />

<br />

<br />

XML-<br />

Dokument<br />

Web-Server<br />

<br />

<br />

<br />

<br />

<br />

XSLT-Stylesheet<br />

Browser<br />

XSLT-<br />

Processor<br />

(Transformer)<br />

Abbildung 6: Umwandlung von XML zu<br />

HTML zum Zwecke der Präsentation<br />

(auf dem Client)<br />

Für ältere Browser muss die Umwandlung<br />

von XML nach HTML auf dem<br />

Server erfolgen (Abbildung 7)<br />

<br />

<br />

<br />

<br />

XML-<br />

Dokument<br />

Web-Server<br />

Servlet<br />

XSLT-<br />

Processor<br />

(Transformer)<br />

<br />

<br />

<br />

<br />

<br />

XSLT-Stylesheet<br />

Abbildung 7: Umwandlung von XML zu<br />

HTML zum Zwecke der Präsentation<br />

(auf dem Server)<br />

Diese Lösung ist universell, sie erscheint<br />

praktisch und einfach realisierbar Der<br />

XSLT-Processor läuft innerhalb eines<br />

Servlets, das die Aufgabe hat, anhand<br />

der Benutzeranforderung die richtigen<br />

Daten auszuwählen und sie dem XSLT-<br />

Processor zuzuführen sowie das Resultat<br />

anschließend an den Browser weiterzuleiten<br />

Es wurde bereits festgestellt,<br />

dass XSLT nur eine Umwandlung von<br />

einem XML-Dokumenttyp in einen anderen<br />

mit Hilfe von Regeln erlaubt<br />

HTML ist kein XML, so dass im ersten<br />

Schritt zunächst XHTML erzeugt wird,<br />

das anschließend 1:1 in HTML umgewandelt<br />

wird Obwohl dieser zusätzliche<br />

Schritt trivial ist, erhöht sich dadurch<br />

etwas die Komplexität der Lösung è<br />

1/02 2 11 7<br />

<br />

<br />

<br />

<br />

HTML-<br />

Dokument<br />

Browser

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!