Erfahrungsbericht JAX 2014: Java EE 7 Power Workshop

Angela Stempfel

Jedes Jahr pilgern einige Puzzler an die JAX in Deutschland. Angela Stempfel war dieses Jahr mit dabei und gibt ihre Erkenntnisse und Highlights weiter.

Sechs Puzzler waren an der diesjährigen JAX in Mainz vertreten. Wir besuchten verschiedene Workshops und waren an den Konferenztagen unterwegs. Mein Erfahrungsbericht steht ganz im Zeichen des Power Workshops zu Java EE 7, der am Montag statt fand und den ich mit drei weiteren Puzzler besuchte. Wir hatten uns für diesen Power Workshop entschieden, da wir Java EE 7 in der täglichen Entwicklung benutzen.

Anfangsschwierigkeiten

Angekommen in der Rheingoldhalle – dem Veranstaltungsort der Konferenz – holten wir unsere Batches (je nach Name eine Herausforderung) und gingen gleich danach zum Saal, in welchem der Workshop stattfand. Bereits 10 Minuten vor Beginn waren die Sitzplätze fast vollständig belegt. Wir hatten jedoch Glück und fanden in der ersten Reihe noch vier Plätze nebeneinander.

Dann hiess es schnell alles bereit machen, damit wir starten können. So schnell ging das leider nicht, das Internet war so langsam, dass es sich als Geduldsprobe herausstellte, den aktuellen Code auszuchecken. Bald kam auch das nächste Problem, wir hatten nämlich keine Stromadapter für unsere Notebooks dabei. So hiess in der Pause kurz in den Saturn und Stromadapter kaufen.

Features von Java EE

Nun zum eigentlichen Thema: Wir lernten anhand eines kleinen Beispielprogrammes einige Features von Java EE kennen. Als Application Server benutzten wir die aktuelle Version von Wildfly. Auf jedes Features einzugehen, würde diesen Blogpost sprengen. Folgend eine kleine Auswahl:

Um REST Services zu verwenden, genügt die Definition mit der Annotation ApplicationPath:

code-rest

 

JPA 2.1 bietet nun eine Neuerung, den Converter, mit welchem man das Mapping sehr flexibel beeinflussen kann.
Dazu wird eine Converterklasse benötigt, die mit ihren beiden Methoden für die Umwandlung eines Java-Attributs in einen Spaltenwert und umgekehrt sorgt. Sie muss mit @Converter annotiert sein und das Interface AttributeConverter<x,Y> implementieren. Dabei ist X der Attribut-Typ und Y der Typ des Datenbankfeldes. Das zu konvertierende Attribut wird mit @Convert annotiert und die Converter Class als Parameter angegeben:

code-jpa

 

In JSF 2.2 wurde ein neuer Scope “Faces Flow” eingeführt. Dieser funktioniert ähnlich wie der Conversation Scope, ohne jedoch den Einschränkungen bezüglich Verschachtelung zu unterliegen. Die bevorzugte Variante, einen Faces Flow zu erstellen, ist die im Flow enthaltenen Webseiten in einem Verzeichnis zu speichern, wobei das Verzeichnis nach dem Flow benannt sein muss und einen, ebenfalls nach dem Flow benannten, Einstiegspunkt für den Flow.

code-jsf

Fazit

Workshopleiter Dirk Weil vermittelte mit seiner ruhigen und kompetenten Art die Thematik sehr gut. Auf Fragen ging es stets ein und beantwortete diese. Ärgerlich war das langsame Internet den ganzen Tag; Es war fast nicht möglich, den Code upzudaten. Dies führte schlussendlich dazu, dass einige Workshopteilnehmer nicht mehr selbst am Netbook mitarbeiteten, sondern sich nur noch auf den Vortag von Dirk Weil konzentrierten. Den Workshop fand ich insgesamt gut, würde diesen aber eher für Anfänger empfehlen. Wer bereits Erfahrung mit Java EE hat und dies allenfalls bereits in Projekten einsetzt, kann nicht viel Neues lernen.

Kommentare sind geschlossen.