Cocoon 2 Und Tomcat
Total Page:16
File Type:pdf, Size:1020Kb
Liebe Leserin, lieber Leser, ich freue mich, dass Sie sich für ein Buch von Galileo Computing entschieden haben. Das Open Source-Projekt Apache-Cocoon braucht in seiner jetzigen Version den Vergleich mit kommerziellen Tools nicht mehr zu scheuen. Innerhalb kurzer Zeit hat es sich zu einem der mächtigsten Frameworks zur Entwicklung von Web- anwendungen entwickelt. Unternehmen wie die Commerzbank oder Hewlett- Packard sowie weitere Institutionen und Firmen haben die Leistungsfähigkeit für sich entdeckt und verwenden Cocoon als XML-Publishing-Framework oder haben Teile davon in Ihre Web-Anwendungen integriert. Ich bin froh, mit Stephan Niedermeier einen Autor gefunden zu haben, der in der Lage ist, Ihnen eine umfassende Einführung in das komplexe Zusammenspiel der Komponenten zu bieten. Mit seiner Hilfe werden Sie Ihre Lernkurve beim Einstieg in Cocoon deutlich senken. Entwicklern und Anwendern eröffnet es den Weg zum produktiven Einsatz von Cocoon. Seit längerer Zeit bietet der Autor eines der meistgelesenen deutschsprachigen Online-Tutorials zur Cocoon-Thematik auf sei- ner Webseite www.logabit.com/cocoontutorial/. Viele Erfahrungen mit eigenen Projekten sind zudem in dieses Buch eingeflossen. Mit viel Sorgfalt haben Autor und Verlag dieses Buch produziert. Ein perfektes Buch kann es leider dennoch nicht geben. Ich freue mich daher, wenn Sie sich mit Ihren kritischen Anmerkungen an mich wenden oder den Kontakt zum Autor in seinem Forum unter www.cocoonforum.de suchen. Und nun viel Freude bei der Lektüre Stephan Mattescheck Lektorat Galileo Computing [email protected] www.galileocomputing.de Galileo Press • Gartenstraße 24 • 53229 Bonn Auf einen Blick Vorwort ........................................................................... 21 1 Einführung in Cocoon...................................................... 25 2 XML – Eine Einführung.................................................... 45 3 XML beschränken............................................................ 69 4 Das Layout – XSL ............................................................. 101 5 Programmieren mit XML ................................................. 133 6 Tomcat............................................................................. 157 7 Cocoon installieren.......................................................... 251 8 Die Sitemap..................................................................... 261 9 Module............................................................................ 347 10 Cocoon erweitern ............................................................ 355 11 Control Flow.................................................................... 441 12 Formularbearbeitung....................................................... 479 13 XSP .................................................................................. 569 14 Datei-Upload................................................................... 585 15 Datenbankzugriffe mit Cocoon........................................ 597 16 Internationalisierung ....................................................... 623 17 Cocoon im Einsatz: Das Portal......................................... 647 A Tomcat............................................................................. 687 B Actions ............................................................................ 708 C Generatoren .................................................................... 713 D Matcher........................................................................... 743 E Reader ............................................................................. 746 F Selectoren........................................................................ 749 G Serializer.......................................................................... 753 H Transformer ..................................................................... 770 I FOM ................................................................................ 798 J XSP .................................................................................. 818 K Input-Module.................................................................. 829 L Glossar ............................................................................ 846 M Anhang: Wichtige Quellen .............................................. 849 N Inhalt der CD-ROM......................................................... 854 Index ............................................................................... 857 Inhalt Vorwort 21 1 Einführung in Cocoon 25 1.1 Geschichte von Cocoon ......................................................................... 27 1.2 Anforderungen an Web-Applikationen ................................................. 28 1.2.1 Trennung von Layout, Inhalt und Logik .................................... 29 1.2.2 Plattformunabhängigkeit .......................................................... 31 1.2.3 Personalisierung ....................................................................... 31 1.2.4 Modularität und einfache Erweiterbarkeit ................................. 31 1.2.5 Internationalisierung ................................................................ 32 1.2.6 Skalierbarkeit ........................................................................... 32 1.2.7 Cross-Media-Publishing ........................................................... 32 1.2.8 Verschiedene Datenquellen ...................................................... 34 1.3 Ein kleiner Einblick in Cocoon ............................................................... 35 1.3.1 Cocoon ist Middleware ............................................................ 36 1.3.2 Cocoon basiert auf Avalon ....................................................... 36 1.3.3 Umgebungen ........................................................................... 37 1.3.4 Request-Response-Zyklus ......................................................... 40 1.4 Die Rolle von XML in Cocoon ............................................................... 41 1.5 Zusammenfassung ................................................................................. 43 2 XML – Eine Einführung 45 2.1 Am Anfang stand SGML ........................................................................ 47 2.2 XML wird beschlossen .......................................................................... 48 2.3 Das XML-Dokument ............................................................................. 48 2.3.1 XML-Deklaration ...................................................................... 49 2.3.2 Tags und Elemente ................................................................... 51 2.3.3 Attribute .................................................................................. 52 2.3.4 Wohlgeformtheit und Gültigkeit ............................................... 53 2.3.5 Eltern- und Kindelemente ........................................................ 57 2.3.6 Entity-Referenzen .................................................................... 58 2.3.7 CDATA ..................................................................................... 59 2.3.8 Kommentare ............................................................................ 60 Inhalt 5 2.4 Namensräume ....................................................................................... 61 2.4.1 Default-Namensräume ............................................................. 63 2.4.2 Mehrere Namensräume ........................................................... 63 2.4.3 Beispiel .................................................................................... 64 2.5 Von HTML zu XHTML ........................................................................... 66 3 XML beschränken 69 3.0.1 Das Beispiel-XML-Dokument ................................................... 72 3.1 DTD ...................................................................................................... 74 3.1.1 DTD referenzieren ................................................................... 74 3.1.2 Elemente ................................................................................. 76 3.1.3 Attribute .................................................................................. 79 3.1.4 Entities .................................................................................... 82 3.2 XML Schema ......................................................................................... 82 3.2.1 Ein XML Schema referenzieren ................................................ 84 3.2.2 XML-Schema-Datei .................................................................. 85 3.2.3 Typen ...................................................................................... 86 3.2.4 Einfache Elemente und Attribute ............................................. 88 3.2.5 Komplexe Elemente ................................................................. 92 3.2.6 Typen referenzieren ................................................................. 96 3.2.7 Das Beispiel in XML Schema .................................................... 98 4 Das Layout – XSL 101 4.1 XSLT ...................................................................................................... 103 4.1.1 XPath ....................................................................................... 103 4.1.2 Der Aufbau eines XSLT-Stylesheets .......................................... 104 4.1.3 Der XSLT-Prozessor ................................................................. 105 4.1.4 XSLT-Templates