Interview mit Thilo Frotscher

'Java EE ist aktuell sehr gut aufgestellt'

Hartmut Schlosser
Thilo Frotscher

Thilo Frotscher, freiberuflicher Softwarearchitekt und Experte für Enterprise Java, Web Services und XML, über die Relevanz des Java-Enterprise-Standards und die Community-Anforderungen an das kommende Java EE 8.

JAXenter: Weshalb lohnt es sich, von Java EE 6 auf Java EE 7 zu wechseln?

Thilo Frotscher:  Im Allgemeinen ist Java EE 7 ein Release, das sicherlich keine revolutionären Neuigkeiten bringt. Stattdessen lag der Fokus darauf, Bestehendes noch runder zu machen und hier und da ein wenig aufzuräumen. Trotzdem enthält Java EE 7 auch viele interessante Neuigkeiten, für die sich der Umstieg durchaus lohnt. Für den Bereich, den ich auf dem Java EE Summit betreue, gilt das sogar in besonderem Maße. So wurde die REST-Unterstützung mit JAX-RS 2.0 deutlich ausgebaut. Es gibt nun eine standardisierte Client-API, umfangreiche Möglichkeiten, das Framework mit Hilfe sogenannte Provider und Filter zu erweitern, Integration mit Bean Validation und Support für asynchrone Abläufe. Nur die Unterstützung für Hypermedia ist leider noch immer ziemlich dünn. Aber da lässt sich mit überschaubarem Aufwand mit eigenem Code nachhelfen. Im Bereich Messaging gibt es ebenfalls interessante Neuigkeiten. Hier wurde nach über 10 Jahren endlich die JMS API modernisiert. Mit der neuen JMS 2.0 API müssen Entwickler deutlich weniger Code selbst schreiben als bislang, bei voller Rückwärtskompatibilität. Darüber hinaus gibt es in Java EE 7 Support für HTML5, Web Sockets, Batch Processing und noch einiges mehr. Es lohnt sich also in jedem Fall, einen Blick auf Java EE 7 zu werfen. Nur die Verfügbarkeit entsprechender Server lässt leider noch ein wenig zu wünschen übrig.

JAXenter: Java EE 7 bringt ja viele Neuerungen für REST – ist der SOAP-Ansatz damit langsam out?

Thilo Frotscher:  SOAP steht bei vielen Entwicklern nicht mehr sehr hoch im Kurs, das ist richtig. Wer die Wahl hat, wird sich in den meisten Fällen heute eher für den REST-Ansatz entscheiden. Das ist auch der Grund, weswegen wir beim Java EE Summit den Fokus im Bereich „Services“ ganz klar auf REST legen. Zudem gab es im Bereich JAX-WS schon längere Zeit keine wirklichen Neuerungen mehr. Die bestehende API hat sich bewährt und funktioniert. Bei der REST-Unterstützung von Java EE tut sich dagegen, wie eingangs erwähnt, jede Menge. Allerdings muss man auch deutlich sagen, dass viele Entwickler eben nicht die Wahl haben. Über die Jahre wurden unglaublich viele Integrationsschnittstellen mithilfe des SOAP-Ansatzes entwickelt, und diese verschwinden nun mal nicht einfach, bloß weil die Technologie nicht mehr dem aktuellen Trend entspricht. Diese Systeme und Schnittstellen sind weiterhin da draußen und müssen gepflegt und weiter entwickelt werden. Darüber hinaus gibt es sogar einige branchenweite Standards für den Datenaustausch, die auf WS-* Technologien aufsetzen. Auch diese werden noch viele Jahre im Einsatz sein. Aus diesen Gründen werden zahlreiche Entwickler auch weiterhin mit SOAP in Berührung kommen. SOAP mag also out sein, wird uns aber weiter begleiten.

JAXenter: Java 8 ist ja jetzt erschienen – welche Auswirkungen hat das Release auf Java EE?

Thilo Frotscher:  Unmittelbare Auswirkungen auf Java EE hat Java 8 zunächst mal keine. Natürlich kann man seinen Java EE 7 Container auf einer Java 8 VM laufen lassen. Aber die APIs von Java EE bleiben ja zunächst mal unverändert. Es wäre natürlich wünschenswert, wenn im Zuge von Java EE 8 die neuen Sprachfeatures auch Einzug in die Java EE API erhalten würden. Da gibt es sicherlich etliche Stellen, wo sich diese gewinnbringend einsetzen ließen. Aber bis Java EE 8 erscheint, wird es noch eine Weile dauern.

Auch im eigenen Anwendungscode von Enterprise-Anwendungen kann man die neuen Sprachfeatures nicht einfach so verwenden. Denn offiziell unterstützen die Container Java 8 erst mit Java EE 8. Daher muss damit gerechnet werden, dass die aktuellen Container mit dem Bytecode neuer Sprachfeatures nicht umgehen können. Nur Wildfly 8 soll Java SE 8 wohl schon jetzt unterstützen. Das wäre dann zumindest mal ein Experiment wert.

JAXenter: Es steht jetzt die Planung für Java EE 8 an. Wenn es nach der Community ginge, sollten in Java EE 8 die APIs für JSON Binding, JCache und der Ausbau der Sicherheits- und CDI-Features umgesetzt werden. Hat die Community die Prioritäten da richtig gesetzt?

Thilo Frotscher:  Wenn man sich die Ergebnisse der Umfrage genauer anschaut, dann stellt man fest, dass es in der Community keinen richtigen Favoriten unter den gewünschten Features gibt: JSON Binding liegt vorne, allerdings mit nur 13.7%. Mit anderen Worten, die Meinungen gehen sehr weit auseinander. Gleichzeitig zeigt dieses Ergebnis meiner Meinung aber auch, dass kein wirklich wichtiges Feature fehlt, das einer großen Mehrheit der Entwickler unter den Nägeln brennt. Die Plattform ist also offenbar ziemlich komplett und ausgereift. Daher stimmen nun also viele Entwickler vermutlich für Verbesserungen in ihrem Spezialbereich, mit dem sie sich besonders häufig auseinandersetzen. Ich persönlich fände ebenfalls JSON Binding sehr wichtig, und ebenso eine Vereinfachung im Bereich Security. Darüber hinaus denke ich, dass beim Thema Management und Monitoring Handlungsbedarf besteht. Nicht zuletzt, wie eben bereits erwähnt, sollte die komplette API daraufhin geprüft werden, wo neue Sprachfeatures aus Java 8 sinnvoll zum Einsatz kommen könnten.

JAXenter: Kann es sich Java EE leisten, das Thema Cloud wieder zu verschieben? Besteht da nicht die Gefahr, dass der Zug langsam abgefahren ist?

Thilo Frotscher:  Das Thema Cloud hat bei der Umfrage ganze 6.7% der Stimmen auf sich vereinigen können. Ich denke, das zeigt deutlich, dass die Community hier keine Eile erkennen kann. Dem würde ich mich zum momentanen Zeitpunkt anschließen.

JAXenter: Immer mehr Funktionalität wird vom Server auf den Browser verlagert – gleichzeitig macht JavaScript mit Frameworks wie Node.js Java EE auch auf dem Server Konkurrenz. Wie sollte Java EE da reagieren, um auch in Zukunft noch relevant zu sein?

Thilo Frotscher:  Java EE ist meiner Meinung nach aktuell sehr gut aufgestellt. Ob mehr Funktionalität auf den Client oder auf den Server verlagert wird, dieser Trend kehrt sich ohnehin in schöner Regelmäßigkeit um. Wenn nun also aktuell viel Funktionalität in die Browser verlagert wird, dann bietet Java EE für solche Systeme ein stabiles Backend mit REST-Schnittstelle und/oder Websocket-Unterstützung und dem dazugehörigen Unterbau. Die Plattform hat sich über viele Jahre bewährt und bietet nachweislich eine stabile und sehr gut skalierbare Lösung für das Backend. Andere Technologien wie Node.js sind natürlich sehr interessant und haben auf jeden Fall ihre Daseinsberechtigung. Die Java-Community kann sich von solchen Technologien inspirieren lassen und Anregungen aufnehmen, wie die eigene Plattform weiter entwickelt werden kann.  Es gibt aber aus meiner Sicht keinen Grund, sich zu sorgen, dass Java EE in naher Zukunft nicht mehr relevant sein könnte.

JAXenter: Vielen Dank für dieses Interview!

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Content-Stratege, IT-Redakteur, Storyteller – als Online-Teamlead bei S&S Media ist Hartmut Schlosser immer auf der Suche nach der Geschichte hinter der News. SEO und KPIs isst er zum Frühstück. Satt machen ihn kreative Aktionen, die den Leser bewegen. @hschlosser
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: