Letzte Woche fand das alljährliche Javaforum statt – ein Pflichtbesuch für Javaentwickler im Großraum Stuttgart, mit über 1600 Leuten eine der größeren und einflußreicheren Veranstaltungen. Besonders schön: Ich war eingeladen, einen der Vorträge zu halten. Kurz zusammengefaßt war’s schön wie immer, allerdings hatte ich den Eindruck, daß dieses Jahr technischere Talks etwas zu kurz kamen (vielleicht hatte ich aber auch nur Pech mit meiner Auswahl der Talks). Im folgenden eine kurzer Abriß über die von mir besuchten Vorträge:
Vaadin - Rich Client Entwicklung für den Browser
Ein Überblick über das auf GWT fußende Vaadin-Framework. Der Talk berichtete über die Entscheidungsfindung für ein geeignetes Webframework für eine Business-Anwendung. In der Tat ist da ein Blick auf Vaadin naheliegend, die Standard-Widgets sehen anständig aus und liefern quasi alles, was man für eine typische Business-Anwendung benötigt. So kann eine entsprechende Anwendung implementiert werden, ohne daß sich der Entwickler um irgendwelche html- oder JS-Themen kümmern muß.
Spannend bleibt die Zukunft von Vaadin dennoch: Google hat das GWT ja in Community-Hand gelegt; immerhin sind einige der Vaadin-Entwickler auch an Bord des GWT-Projekts, so daß man hoffen kann, daß Vaadin nicht irgendwann die Grundlage wegbricht.
Batch-Frameworks in Java
Ich war neugierig, was man heutzutage mit Batchverarbeitung macht bzw. machen kann. Entsprechende Bibliotheken versprechen Unterstützung für Batch-Jobs in Form von Transaktionen, Retries und vereinheitlichter Fehlerbehandlung. Der Ausspruch „das Cobolzeug da auf der Folie lassen wir mal weg“ gibt einen guten Eindruck, aus welcher Zeit die Batch-Konzepte stammen ;-) Alles in allem sehe ich aber gerade keine Anwendungsmöglichkeit hierfür am Horizont.
Lambdas, Collections und Streams
Ein Überblick über die neuen Funktionen in Java 8 – inhaltlich war mir das meiste zwar bekannt, aber der Vortrag wurde verständlich und unterhaltsam präsentiert. Als Fan funktionaler Konzepte kann ich natürlich nur jedem raten, sich mit diesen Neuerungen von Java 8 zu beschäftigen, der eigene Code wird dadurch bedeutend kompakter und lesbarer.
Web Security rings um die Anmeldung
Mein Auftritt :-) Der Vortrag war trotz „Futternarkose“ direkt nach der Mittagspause mit ca. 200 Leuten gut besucht. 45 Minuten sind leider ziemlich knapp, trotz Kürzung des Inhalt mußte ich das Tempo im letzten Drittel anziehen… ich hoffe, meine Zuhörer haben’s mir nicht übel genommen. Zum Nachlesen gibt es hier die Folien. Im Anschluß gab es noch ein halbes Dutzend Nachfragen in kleiner Runde, kombiniert mit positivem Feedback. So macht das Vortragen Spaß.
Anwendungsfälle für Elasticsearch
Mein persönliches Highlight des Tages (Folien sind hier verfügbar) – ich habe mit Elasticsearch noch nichts zu tun gehabt und war neugierig auf einen ersten Eindruck. Einfache Installation (einfach nur das JAR ausführen), automatisches Sharding und Replizieren – klingt fast zu schön um wahr zu sein :-)
Im Vortrag wurden neben der grundlegenden Nutzung verschiedene Anwendungsfälle gezeigt, vom einfachen Index über die Kombination mit Logstash und Kibana bis zur Verwendung (Mißbrauch?) als vollwertiger Datastore. Für letzteres gibt es auch kritische Stimmen, einen solchen Einsatz muß man wohl im Einzelfall abwägen.
Allgemein hat’s mich begeistert, ich muß unbedingt mal ein ELK (Elasticsearch-Logstash-Kibana) aufsetzen :-)
Einstieg in die Portalentwicklung mit Liferay
Liferay ist ein Thema, das mir auch immer wieder begegnet, deshalb hoffte ich hier auf einen systematischen Einstieg in das Thema. Leider verwendete der Vortrag sehr viel Zeit auf – zynisch gesprochen – das Erläutern des Hochganzprospektes, die Technik blieb lange Zeit außen vor.
Ich hatte gehofft, hier etwas über ein vernünftiges Buildsetup für Portlets zu erfahren; leider bietet Liferay hier tatsächlich nur der häßliche autogenerierte ant-Ansatz, sowie ein noch recht neues Maven-Setup.
Ansonsten wurde werbefrei zwischen der Community- und der Enterprise-Edition differenziert: Während die Communityedition Updates in größeren Abständen (2 - 4 Monate) erfährt, erhält man für die Enterprise Edition zeitnah Hotfixes und Security Alerts. Dadurch kann es dazu kommen, daß ein Portlet nur auf einer der beiden Editionen vernünftig funktioniert. Ansonsten bietet die Enterprise Edition einige zusätzliche Komponenten; die angepriesene Entwicklungsoberfläche ist nichts anderes als ein vorkonfiguriertes Eclipse, auf das man wohl getrost verzichten kann.
Bildquelle: JUGS G+-Galerie