Vergleich von Java Web Frameworks
Als allgemeinen Trend für Web Frameworks bzw. Web Architekturen im Java Bereich kann man vielleicht sagen, dass Struts 1 mittlerweile zum alten Eisen gehört. Aber auf welches Pferd soll man denn nun setzen?
Ich persönlich setze auf JSF in Verbindung mit Ajax (wie z.B. auch bei OpenWishes.de zu sehen ist, welches komplett mit JSF 1.2 und JBoss RichFaces erstellt wurde) denn damit ist es gut möglich dynamische Web Anwendung auf einer sauberen Architektur zu erstellen.
Aber welches Web Framework ist nun das richtige? Man hat die Wahl zwischen einigen Vertreten wie z.b. Struts 2, JSF oder Spring MVC. Einen kleinen aber guten Überblick bietet da eine Präsentation (Direktlink zum pdf) von Raible Designs welche eine Pro & Contra zwischen den Frameworks Spring MVC, Struts 2, Stripes, JSF, Trapesty und Wicket gibt.
Neben der Auflistung der Vor und Nachteile der einzelnen Frameworks selbst werden sie in den Punkten wird noch weitere Punkte für eine Evaluierung zur Auswahl des für sich richtigen Frameworks eingegangen. Unter anderem sind da die Punkte Ajax Unterstützung, Validierung, Testbarkeit, Internationalisierung oder Community und Support eingegangen.
Gegen Ende kommen noch ein paar Graphen zur Schau um einen möglichen Trend ausfindig zu machen. Und Trends kann man meistens auch an der Anzahl angebotener Stellen aufzeigen und der geht klar in Richtung JSF.

An zweiter Stelle in dieser Grafik ist Spring MVC positioniert. Aber genau die in der Präsentation beschriebenen Nachteile wie “sehr konfigurationsintensiv” in Kombination mit “sehr flexibel” machen dieses Framework sehr komplex und das war auch der Grund warum ich damals wieder davon losgekommen bin.
Insgesamt eine sehr schöne Übersicht mit Hilfestellung zu einer möglichen Framework Selektierung auf Java Basis – es lohnt sich also die Präsentation einmal durchzublättern.
Jetzt kommt noch der Begriff “Service Oriented Frontend Architecture” der natürlich nicht fehlen darf. In der Präsentation übrigens schön abgekürzt durch “SOFEA”. Das ist die persönliche Aussicht des Autors auf die zukünftige Entwicklung. Generell stimme ich dem zu, aber ich glaube bis solche Architekturen (Komplett entkoppeltes Frontend/GUI zur Business Logik verbunden durch Services) sich in Unternehmen durchsetzen bzw. zum Standard von Webanwendungen werden dauert es doch noch ein wenig.

