Vaadin 7 Beta ist da

Hartmut Schlosser

Rich Internet Applikationen kann man bauen, indem man die GUI-Logik rein serverseitig in Java implementiert, für das Client-seitige Rendern aber das Google Web Toolkit heranzieht, das bekanntlich Java in JavaScript verwandelt. Diese Idee wurde vom Webframework Vaadin überzeugend umgesetzt, das in den letzten Monaten eine wachsende Anhängerschaft um sich scharen konnte. Nun steht Vaadin an einer wichtigen Schwelle, einer Rundumerneuerung, die das Framework auf eine neue Stufe heben soll: Das Vaadin-Team hat die erste Beta der Version 7.0 freigegeben.

Gegenüber den vorangegangenen Alpha-Releases hat die Beta-Version die Besonderheit, dass alle zum finalen 7.0-Release hin geplanten API-Änderungen durchgeführt wurden. Deshalb haben es sehr viele Neuerungen in das Release geschafft – allerdings mit dem Nebeneffekt, dass die ein oder andere rohe Kante noch nicht abgeschliffen wurde.

Die Alpha-Releases von Vaadin 7 hatten bereits ein neues Windowing API, eine neue Kommunikationsschicht, JavaScript-Erweiterungen und das komplette Google Web Toolkit integriert. Die Beta fügt nun ein reiches Feature-Set hinzu, darunter ein neues Paketierungssystem, eine SASS-Implementierung, Detektoren für das Schließen von Browser-Fenstern, ein vereinfachtes CSS Layout und ein neuer Locking-Mechanismus für im Hintergrund laufende Threads.

War das Framework früher in einem einzigen Jar ausgeliefert worden, wurde Vaadin nun in sieben leichter verdaubare Distributionen eingeteilt, die individuelle Konfigurationen ermöglichen sollen. Die Pakete reichen von vaadin-server für serverseitige Anwendungen über vaadin-client für die Client-Seite (inklusive GWT) bis zu vaadin-themes (Vaadin Themes Reindeer, Runo, Chameleon, Base und Liferay), vaadin-client-compiler (Tools zur Kompilierung von Java nach JavaScript) und vaadin-theme-compiler (Implementierung des SASS Compiler).

Die wichtigsten Änderungen haben sich indes am Vaadin Core vollzogen. Die Kernkonzepte des Frameworks wurden gründlich überarbeitet. Es gibt kein Hauptfenster in Anlehnung eines Browsers mehr, keine Application im Sinne einer Vaadin-Session und auch keinen ApplicationContext. Allgemein gesprochen wird die Entwicklung nun stärker auf UI-Komponenten bezogen. Eine Gruppe von Vaadin-UI-Komponenten einer Webseite heißt nun schlicht UI. Der Status der Komponenten ist in einer VaadinSession gespeichert (per Default in einer HttpSession). Vaadin-Entwickler Joonas Lehtinen demonstriert die neuen Konzepte mit dem folgenden Vaadin-Hello-World:

public class MyVaadinUI extends UI {
   protected void init(final WrappedRequest request) { 
      addComponent(new Label("Hello world!"));
   }
}  

Wie Joonas allerdings eingestehen muss, konnten in Vaadin 7 Beta nicht alle geplanten Features umgesetzt werden. Die ambitionierte Roadmap sah z.B. auch Server-push, Taglib für die JSP/JSF-Integration, WAI-ARIA Support und On-the-fly-Übersetzungen vor. Diese Funktionen sollen aber rasch in kleineren Folgereleases nachgeliefert werden (Server-Push soll beispielsweise in der 7.1 enthalten sein).

Zur Einführung in Vaadin 7 Beta empfiehlt sich die Release-Vorstellung auf dem Vaadin-Blog sowie die Release-Notes. Bugs können über die Entwicklerseite dev.vaadin.com gemeldet werden – wie gesagt kann es hier noch die ein oder andere Unregelmäßigkeit geben, die bis zu Vaadin 7 gefixt werden sollte. Der ursprüngliche Termin 1. Oktober 2012 dürfte für Vaadin 7 deshalb etwas zu optimistisch angesetzt worden sein. Zum jetzigen Zeitpunkt könne man das genaue Release-Datum nicht einschätzen, heißt es auf dem Entwicklerblog. Sicher ist allerdings, dass die Beta-Versionen wöchentliche Updates erfahren werden – solange eben, bis alles passt.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.