Artikel

 
September 2011 | Artikel

Vaadin - ein Java-Webframework im Visier

(Link zum Artikel: http://www.it-republik.de/jaxenter/artikel/4057)

Ein Java-UI-Framework für das Web

Text: Florian Müller
  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share
Im Bereich der Java-UI-Webframeworks wurden zu Ajax-Hype-Zeiten echte Schlachten ausgetragen. Mittlerweile ist es ruhiger geworden, die Spreu hat sich vom Weizen getrennt. Was bleibt, ist eine Handvoll solider und ausgereifter Frameworks, die für die Entwicklung von Weboberflächen „on top of Java“ eingesetzt werden können. Der vorliegende Artikel stellt das Vaadin-Framework [1] vor. Dabei handelt es sich um ein eher unbekanntes Framework. Die Resultate, die sich basierend auf Vaadin erzielen lassen, sind jedoch beeindruckend – Grund genug, das Framework explizit im Java Magazin vorzustellen.
Teil 1   Teil 2   Teil 3   Teil 4   

Benutzeroberflächen im Kontext von Java haben bekanntermaßen eine schwierige Kindheit durchlebt. Die direkten Java-Oberflächentechnologien (AWT, Swing, SWT usw.) sind mittlerweile auf einem robusten Stand, der es ermöglicht, den Einsatz der Technologien in Projekten entsprechend argumentativ zu vertreten. Leider liegt der Fokus bei der Entwicklung von Oberflächen, basierend auf direkten Java-Technologien, jedoch nach wie vor eher auf „rock solid“ und nicht unbedingt auf „smart“. Auch JavaFX konnte nicht dazu beitragen, dass Java-Oberflächen das angestaubte Image der Vergangenheit abstreifen konnten. Gerade im Hinblick auf die heranrollende Welle von Smartphone- und Tablet-Anforderungen wird deutlich, dass man, basierend auf einer Plain Oracle Architecture, den daraus resultierenden Anforderungen nur bedingt gerecht werden kann. Auch der „Zero-Install“-Ansatz ist de facto nicht vorhanden. Für Shopanwendungen z. B., bei denen es wichtig ist, keine Benutzergruppe auszusperren, kommt der Griff zu einer reinen Java-Technologie nach wie vor nicht in Frage. Es sei jedoch auch bemerkt: Für echte Power-GUIs, bzw. Benutzermasken, die mehr können müssen, als nur einen Warenkorb anzuzeigen und grundsätzlich auf einen hohen Produktivitätsgrad ausgelegt sind, ist Java nach wie vor ein Topkandidat. Das beste Beispiel dafür ist die Eclipse IDE, die von Millionen von Entwicklern tagtäglich eingesetzt wird, um professionell Software zu entwickeln.

Für den Business-to-Business- bzw. Business-to-Consumer-Bereich gilt jedoch der Einsatz von Dritt-Frameworks aus den oben genannten Gründen als durchaus legitim, um optimale Resultate bei der Umsetzung der Kundenanforderungen erzielen zu können. Häufig taucht bei der Frameworkauswahl noch die grundsätzliche Frage „Standard oder nicht?“ auf. An dieser Stelle sei erwähnt: Im Bereich von „On top of Java“-Weboberflächen existiert ein solcher Standard (JSF), und die Auswahl eines Frameworks, das den JSF-Standard entsprechend unterstützt, garantiert im Gegenzug einen hohen Grad an Nachhaltigkeit. Leider bieten die meisten der aktuell am Markt verfügbaren JSF-Implementierungen jedoch nur ein relativ geringes Abstraktionslevel, sodass der Einsatz des JSF-Standards unter Umständen eine bremsende Wirkung auf die Entwicklung haben kann – der Entwickler steht also vor der Entscheidung: Entwicklungskomfort versus Standard. Im Rahmen dieses Artikels wurde der Komfort-Weg eingeschlagen. Vaadin unterstützt den JSF-Standard nicht – dafür kann die Anwendung jedoch komplett in Java geschrieben werden, ohne dass der Entwickler in irgendeiner Form mit JSF-Bibliotheken oder sonstigen JSF/JSP/HTML-Tags in Berührung kommen muss.

Das Vaadin-Framework stammt übrigens aus Finnland und weist eine kleine Historie auf. Vielleicht wird sich der eine oder andere Leser noch an das Ajax-Framework „IT Mill Toolkit“ erinnern. Dabei wurde für das clientseitige Komponenten-Rendering eine proprietäre Eigenentwicklung eingesetzt, die im Jahr 2007 aufgegeben und durch das Google Web Toolkit ersetzt wurde. GWT? Richtig. Vaadin verfolgt den Ansatz, dass man die Crux des clientseitigen Renderings mit sämtlichen Höhen und Tiefen an Google abtreten kann. Das passiert nach dem Motto: „Es langt, wenn sich die GWT-Jungs mit Themen wie Browserinkompatibilitäten herumschlagen. Wir konzentrieren uns auf den Server und die Kommunikation zwischen Client und Server.“ Auch das Lizenzmodell wurde im Rahmen des Architekturwechsels in eine Apache-2.0-Lizenz (open, free, do what you want) überführt. Danach wurde im Rahmen eines Rebrandings auch der alte Name „IT Mill Toolkit“ über Bord geworfen und durch „Vaadin“ ersetzt. Dass Vaadin für das Wort Rentier steht, ist dank Wikipedia schnell in Erfahrung zu bringen. Der Bezug zum Framework wird jedoch erst durch eine kleine Buchstabenrotation ersichtlich: Drehen Sie doch einfach mal das Vaadin-Logo um 90 Grad und Sie werden ein gehörntes Rentier erhalten.

Nach den Soft-Facts wird als Nächstes die Architektur des Frameworks beleuchtet, damit Sie anschließend im Rahmen der Demo-Implementierung das Big Picture kennen und wissen, was hinter den Kulissen des Vaadin-Frameworks passiert. Die Frameworkarchitektur ist in Abbildung 1 dargestellt.

Teil 1   Teil 2   Teil 3   Teil 4   

Anzeige

Kommentare


Anzeige

zurück zum Seitenanfang