Java Web Anwendungen
Web Anwendungen sind heutzutage weder für die Anwender noch für die Entwickler wegzudenken. Im Vergleich zu herkömmlichen Applikationen sind hierbei jedoch einige Besonderheiten zu beachten, zum Beispiel die Herausforderung, Benutzerinformationen über ein zustandsloses Protokoll zu speichern und abzurufen. Und durch die wachsende Reife und Popularität ausgefeilter JavaScript-Frameworks gilt es mittlerweile wieder zu entscheiden, welche Teile der Anwendung auf dem Server und welche auf dem Client laufen sollen. Mit diesen und einigen weiteren grundlegenden Überlegungen zu den Basistechnologien einer Java Web Anwendung werden wir in diese Schulung einsteigen.
Java Server Faces und Spring Webflow
Java Server Faces ( JSF ) ist eines der oben erwähnten Web-Frameworks. JSF beinhaltet einerseits viele vorgefertigte Komponenten, aus denen Webseiten aufgebaut werden. Eingabefelder, Buttons, Dropdown- Boxen – für viele Oberflächenelemente bietet JSF Komponenten an. Andererseits übernimmt JSF automatisch die Anbindung dieser Oberflächenelemente an die Java-Objekte, mit denen die Business-Logik implementiert wird. Das Grundgerüst einer Web Anwendung ist damit schnell erstellt. Was aber noch fehlt, sind die Verbindungen zwischen den einzelnen Webseiten. Natürlich kennt JSF Navigations-Elemente, aber erst seit Version 2.2 kann JSF die Navigation über den sogenannten Flow logisch gruppieren und in den Gesamtkontext der Anwendung einbetten. Bisher wurde dafür meist Spring Webflow verwendet, das ebenfalls eine Gruppierung und Modularisierung des Frontends erlaubt. Beides werden wir Ihnen selbstverständlich nicht vorenthalten.
Facelets und Richfaces
In den Anfangsjahren der Web Anwendungen mussten Java Entwickler die einzelnen Seiten in Form von Java Server Pages ( JSP ) programmieren. Im Lauf der Zeit entstanden für JSPs zwar zahlreiche Bibliotheken, die häufig benötigte Komponenten zur Verfügung stellen, doch haben diese nicht die grundlegende Schwäche von JSPs beheben können: die Vermischung von Code für die Darstellung der Seiten mit Programmcode der Geschäftslogik. Mit den Facelets wurde daher eine ganz neue Technologie für die Gestaltung der Webseiten entworfen, die eine saubere Trennung des Oberflächendesigns von der Geschäftslogik ermöglicht. In der Regel werden Facelets im XHTML-Format erstellt, was den Einstieg sowohl für Softwareentwickler als auch für Webdesigner erheblich vereinfacht. Als Ergänzung werden wir Ihnen die Komponentenbibliothek RichFaces vorstellen, die viele komplexe Oberflächenelemente zur Verfügung stellt. Mit Hilfe von RichFaces ist es ein Leichtes, moderne Anforderungen an eine Web Anwendung mit wenigen Befehlen zu realisieren. Mit JSF, Facelets, RichFaces und Webflow lernen Sie in dieser Schulung einen mächtigen Technologiestack kennen, mit dem eine effiziente Erstellung von Web Anwendungen möglich ist. Gerade bei Web Applikationen kommt es bei der Entwicklungsgeschwindigkeit aber stark darauf an, mit welchen Frameworks sich ein Entwickler auskennt.Die zugrunde liegenden Prinzipien sind bei allen ähnlich, doch in der konkreten Ausgestaltung unterscheiden sich die Frameworks teilweise erheblich. Daher ist es nicht ohne weiteres möglich, das Know How, das sich Entwickler in einem Framework erarbeitet haben, auf ein anderes zu übertragen. Sollten Sie also ein anderes Framework einsetzen oder darüber nachdenken, sei es Vaadin, Wicket oder Spring MVC, dann informieren Sie uns darüber, damit wir die Inhalte dieser Schulung entsprechend anpassen können.