Struts, Tapestry, Spring, Hibernate

Was taugen Open-Source-Frameworks?

26.08.2009
Von 
Diego Wyllie hat Wirtschaftsinformatik an der TU München studiert und verbringt als Softwareentwickler und Fachautor viel Zeit mit Schreiben – entweder Programmcode für Web- und Mobile-Anwendungen oder Fachartikel rund um Softwarethemen.

Tapestry: Web-Entwicklung wie mit Swing

Während Struts sich darauf beschränkt, das Gerüst für eine MVC-Architektur zu liefern, unterstützt ein weiteres Toplevel-Projekt aus dem Hause Apache den Java-Entwickler bei zeitraubenden Aufgaben wie dem Entwerfen vieler robuster Websites mit komplexen Navigationen. Die Rede ist von "Tapestry". Das Framework basiert auf einem Komponenten-orientierten Programmiermodell. Anstatt sich mit Request-Parametern und URLs zu beschäftigen, können Programmierer wie gewohnt mit Objekten arbeiten. Damit findet eine klare Trennung zwischen dem HTML-Code und der Geschäftslogik statt, wie sie schon immer angestrebt wurde. Allerdings muss dabei eine hohe Einarbeitungszeit in Kauf genommen werden.

Die Web-Entwicklung mit Tapestry gleicht der Entwicklung von grafischen Benutzeroberflächen mit Swing. Eine Tapestry-Seite dient dabei als Container und besteht aus drei Dateien: einer XML-Seitenspezifikation, einem HTML-Template und einer Java-Klasse. In der ersten Datei werden die Attribute und Komponenten definiert, die innerhalb der Seite verwendet werden sollen. Die Benutzeroberfläche wird durch die HTML-Schablone bestimmt. Schließlich enthält die Java-Klasse im Wesentlichen einige Accessor-Methoden, mit denen die Seitenattribute modifiziert werden können. Seit dem aktuellen Release (5.x) von Tapestry ist unter anderem eine Integration in Hibernate und Spring möglich.