Projekt Avatar wird Open Source: JavaScript und Java EE traut vereint

Hartmut Schlosser

Vor zwei Jahren angekündigt, auf der letzten JavaOne noch als Geheimtipp gehandelt, jetzt auf der Open-Source-Bühne angekommen: Oracles Projekt Avatar steht ab sofort unter https://avatar.java.net/ quelloffen zur Verfügung.

Avatar ist Teil von Oracles Masterplan, die JavaScript- und Java-Programmierung aneinander anzunähern. Neben der JavaScript-Engine Nashorn und dem NetBeans-HTML5-Plug-in „Easel“ ist Avater das dritte JavaScript-Projekt, das in diese Kerbe schlägt. Es handelt sich dabei im Wesentlichen um ein Webframework, das HTML5-Frontends und Java-EE-Backends miteinander verbinden soll.

Die genaue Ausgestaltung von Avatar beschreibt John Clingan auf dem Aquarium Blog. Drei Komponenten werden geboten. Zum einen ist da Avatar.js, das es Entwicklern ermöglicht, auf Basis des Node-Programmiermodells JavaScript-Dienste auf dem Server zu schreiben. Veröffentlicht werden die Dienste über WebSockets, REST oder Server Sent Events (SSE), sodass beliebige Client-seitige Frameworks darauf zugreifen können.

Zweitens sollen JavaScript-Entwickler auf dem Server auch Java-EE-Services nutzen können. Avatar richtet sich also nicht nur an die Java-Community, auch JavaScript-Entwickler rücken ins Feld der potentiellen Konsumenten von Java EE Services. Allerdings besteht das Ziel von Avatar nicht darin, JavaScript APIs für sämtliche Java-EE-Technologien zu schaffen. JavaScript-Entwickler sollen aber Zugriff auf eine „genügend große“ Untermenge von Java EE erhalten, wobei die JavaScript APIs stärker deklarativ sein werden als die urspünglichen Java-EE-Varianten.

Schließlich soll ein prinzipiell unabhängiges Client-seitiges Framework bereit gestellt werden, mit dem HTML5-Komponenten an Services gebunden werden können. Dabei soll nur ein minimales JavaScript-Wissen notwendig sein; die Services werden wieder über WebSockets, REST und SSE verbreitet.

Es ergibt sich damit das folgende Architekturmodell:

Avatar-Architektur. Bild: https://avatar.java.net/

Mit Avatar wagt man also die Symbiose aus HTML 5 und Java. Von „hybriden Anwendungen“ ist die Rede, das ausgegebene Motto: Bringen wir das alte Paradigma „Write Once, Run Anywhere“ ins Rich-Web-Zeitalter. Unterstützt wird auch das generische JavaScript-Java-Interface aus dem Nashorn-Projekt, mit dem sich Java-Methoden direkt von JavaScript aus aufrufen lassen. Damit wird beispielsweise auch das reiche Set an Java Librarys zugänglich.

Derzeit läuft Avatar auf der Basis des GlassFish Servers (Avatar GF Distribution), weitere Distributionen sollen folgen. Auf der Projektseite findet man bereits einige nützliche Tutorials für den Einstieg ins neue JavaScript-/Java-Zeitalter.

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare

Schreibe einen Kommentar

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