URL dieses Buch-Tipps:
The Definitive Guide to Apache: MyFaces and Facelets
Lars Röwekamp

Ein eigenes Buch zum Thema Apache MyFaces, ist das nicht ein wenig übertrieben? Gut, das Thema Faclets wird ebenfalls beleuchtet, aber ist MyFaces letztendlich nicht nur die Umsetzung des JSF-Standards, zu dem es bereits Bücher wie Sand am Meer gibt? Die Antwort auf diese Frage ist ein klares Nein. Das Apache-MyFaces-Projekt, mit all seinen Subprojekten, bietet mehr als nur eine Alternative zur JSF-Referenzimplementierung von Sun. Dies wird bereits beim Lesen der Einleitung deutlich. Als logische Konsequenz ist die allgemeine Einleitung zu JSF auch kurz gehalten. Stattdessen wird der Fokus auf die Besonderheiten der verschiedenen Subprojekte gelegt.

Das erste Kapitel gibt einen kurzen Abriss über die Entstehung der JSF-Spezifikation im Allgemeinen und des Apache-MyFaces-Projekts im Speziellen. Anhand eines kleinen praktischen Beispiels wird man dabei von der Installation bis hin zur laufenden Anwendung in die JSF-Welt eingeführt. Im zweiten Kapitel werden die wichtigsten Tomahawk-Komponenten aufgezeigt und deren Funktionalität sowie grundlegenden Attribute anhand praktischer Beispiele erläutert. Die Qualität der aufgeführten Referenz der einzelnen Komponenten entspricht dabei in etwa der Onlinevariante auf den MyFaces-Seiten, wobei im Buch nur die wesentlichen Attribute aufgezeigt werden. Dem zweiten Namensgeber des Buchs – Facelets – ist Kapitel drei gewidmet. Neben einer einleitenden Motivation zum Einsatz von Facelets und dem damit verbundenen Verzicht auf JSPs, werden die Facelets-Installation sowie die Migration bestehender JSF-Projekte auf JSP-Basis beschrieben. Auch hier werden anhand von Beispielen die Möglichkeiten der Facelet-Technologie aufgezeigt. Das umfasst u.a. das Kombinieren bestehender Komponenten zu neuen Composistion Components, den Templating-Mechanismus, die Verwendung der Unified Expression Language oder die Problematik bei der Verwendung externer Libraries, die nicht von Haus aus bereits einen Facelets Support mit sich bringen. Während sich die ersten drei Kapitel eher auf die Major Player im Apache-MyFaces-Umfeld beziehen, führen die restlichen Kapitel des Buchs in weniger bekannte aber nicht weniger interessante Subprojekte ein. Da die einzelnen Themen jeweils genug Stoff für ein eigens Buch liefern würden, können sie nur angerissen werden.

Den Anfang macht das Subprojekt Trinidad – Zitat – "donated by Oracle to the Apache Software Foundation". Dem einen oder anderen als Komponentenbibliothek bekannt, bietet Trinidad deutlich mehr als reine JSF-Komponenten. Dialog Framework, Page Flow Scope und clientseitige Kovertierung bzw. Validierung gehören ebenso zum Umfang wie Skinning oder partielles Seiten-Rendering. Alle diese Themen finden sich im Rahmen des Kapitels wieder und werden anhand praktischer Beispiele erläutert. In dem Kapitel zum Subprojekt Orchestra wird die Dynamik der Apache MyFaces Community besonders deutlich. Orchestra ist die Antwort auf das ewig ungelöste Problem lang laufender, seitenübergreifender Conversations, wie sie z. B. im Rahmen von Wizards auftreten, inklusive intelligenter Lösung der damit zusammenhängenden State- und Persistenzproblematik. Kapitel fünf zeigt die Grundideen und die praktische Anwendung von Orchestra auf. Den Abschluss bildet das Kapitel sechs zum Subprojekt Tobago, dessen Fokus auf der Implementierung von desktopähnlichen Webanwendungen mit konsistentem Look & Feel liegt. Tobago bietet dazu einen ganze Reihe High-Level-Komponenten, die mithilfe von Layout Managern flexibel positioniert werden können. Der Fokus des Kapitels liegt auf den Layout- und Theme-Möglichkeiten von Tobago. Hier wird deutlich, dass im Rahmen eines allgemeinen MyFaces-Buchs die Möglichkeiten und Stärken einzelne Subprojekte nur ansatzweise beschrieben werden können.

Fazit: Das Buch ist keine Einführung in die Wunderwelt der JavaServer Faces. Es bietet vielmehr einen guten Überblick über die (meisten) Apache-MyFaces-Subprojekte und bringt diese in Relation zueinander. Nach der Lektüre ist dem Leser klar, welches Subprojekt für welche Problemstellung die beste Lösung darstellt und wie man die einzelnen Subprojekte miteinander kombiniert. Einen besonderen Mehrwert erhält das Buch durch das bisher noch nicht erwähnte letzte Kapitel "Antipatterns and Pittfalls", in dem die vier Autoren ihre jahrelange Erfahrung im JSF-Umfeld mit dem Leser teilen. Allein dieses Kapitel bzw. die Zeit und Nerven, die man dank der vielen Tipps sparen kann, dürfte bereits den Kauf rechtfertigen.



Autor: Zubin Wadia, Martin Marinschek, Hazem Saleh und Dennis Byrne
Verlag: Apress
ISBN: 13-978-1-59059-787-8

© 2004 Software & Support Verlag GmbH. Vervielfältigung nur mit Genehmigung des Verlags. Fragen?