Struts, das revolutionäre, aber etwas in die Jahre gekommende Web Framework war lange Zeit ein „quasi Standard“ für Webapplikationen. Mit dem JSR 127 schickt sich nun JSF (Java Server Faces) an, die Nachfolge anzutreten. JSF in der brandneuen Version 1.2 ist im Gegensatz zu Struts nur ein J2EE Standard, den man implementieren kann. Es gibt momentan nur die Referenz Implentierung von SUN und die Apache Implementierung „My Faces“, die man frei nutzen kann.
Zwischen den Anhängern von Struts (und dessen Weiterentwicklung Struts Shale) und JSF gibt es im Netz jede Menge Argumente dafür, welches der beiden sich besser für die Webentwicklung eignet. Doch wer könnte besser die Unterschiede erklären, als Craig McClanahan, der Erfinder von Struts und Chef Architekt von JSF 1.0. In dem MP3 Mitschnitt (und den dazu gehörigen Slides) seiner W-JAX Session geht er ausführlich auf die Unterschiede zwischen den beiden Kandidaten ein.
Für mich hat Struts zur Entwicklung einer Webapplikation mit HTML Interface noch lange nicht ausgedient, zumal man bei JSF immer von der Implementierung abhängig ist. Andererseits ist man mit JSF nicht an HTML gebunden, sondern könnte seine Komponenten z.B. auch nach XUL rendern.
Doch hört selbst. Wer sich danach für JSF entscheidet sollte sich auch gleich das Material zur „JSF Grundlagen“ Session von Thomas Spiegl und Martin Marinschek anschauen.