Java Magazin 5.12
Keine Kommentare

WebSocket

Erhältlich ab: April 2012
Umfang: 116 Seiten Seiten
Autoren / Autorinnen:
Bernd Fondermann, Wolfgang Frank, Kay Glahn, Manfred Gruner, Peter Hruschka, Michael Johann, Thorsten Kamann, Klaus Kreft, Angelika Langer, Bernhard Löwenstein, Daniel Lübke, Michael Müller, Michael Pichler, Florian Potschka, Lars Röwekamp, Sascha Sengespeick, Sandro Sonntag, Gernot Starke, Tammo van Lessen, Oliver Wehrens, Hanno Wendt, Matthias Weßendorf, Dirk Wieczorek

Magazin

News

Bücher: Zweimal Softwarearchitektur

Bücher: Parallele und verteilte Anwendungen in Java

Bücher: Der freche Vogel fängt den Wurm

Big Data: Erwarten wir das Unerwartete
Interview mit Yves de Montcheuil

Kolumne: Die flinke Feder
Leben und leben lassen
von Bernd Fondermann

Java Core

Effective Java
JSR 166y – Fork-Join-Framework – Teil 2
von Klaus Kreft und Angelika Langer

Titelthema

Schneller als der Blitz!
WebSocket stellt Webentwicklern eine bidirektionale TCP-Verbindung im Browser bereit
von Matthias Weßendorf

Realtime Push Events zum Browser
Es muss nicht immer WebSocket sein
von Oliver Wehrens

Streaming mit WebSocket und SSE
UDP Broadcasts über WebSocket und Server-Sent Events verfügbar machen
von Matthias Weßendorf

„Ein gutes Protokoll ist kein Garant für ein gutes API.“
Interview mit Alexey Melnikov

Web

Der neue Personalausweis in der Praxis
Das kleine Einmaleins für die Implementierung der Online-Ausweisfunktion
von Dirk Wieczorek und Sascha Sengespeick

Tutorial

On the Road to Continuous Delivery
Ihr Fahrplan für Releases am laufenden Band
von Thorsten Kamann und Hanno Wendt

Architektur

Klein, kurz, schlank
Skalierbarkeit für Fortgeschrittene: Caches und Asynchronität
von Michael Pichler

Kolumne: Knigge für Softwarearchitekten
Die ständig Lernenden
von Peter Hruschka und Gernot Starke

Mobile

IT’s magic
Mobile REST-iOS-Apps mit RestKit und Spring MVC
von Michael Johann, Sandro Sonntag, Wolfgang Frank

Kolumne: Mobile Welten
EclipseSource stellt RAP-Mobile-Framework vor
von Kay Glahn

Enterprise

Testobjekt: Geschäftsprozess
Geschäftsagilität durch Tests sichern
von Daniel Lübke und Tammo van Lessen

Live long and cluster!
Ausfallsicherheit, Fehlertoleranz und Skalierbarkeit mit In-Memory Data Grids
von Manfred Gruner

Kolumne: EnterpriseTales
CDI geht fremd! Dependency Injection für Java SE
von Lars Röwekamp und Matthias Weßendorf

Java EE 6 Security
Theory in Practice oder „Mr. Bond, übernehmen Sie!“
von Bernhard Löwenstein

Retrospektive

JBoss 4 – Open Source J2EE Power
von Bernhard Löwenstein

Evolution im Web

Das Timing hätte nicht besser sein können: Kurz vor dem Produktionsstart dieser Ausgabe erreichte uns die Nachricht, dass die WebSocket-Spezifikation, genauer gesagt der JSR-356 (Java API for WebSocket), jetzt offiziell im Java Community Process angenommen wurde.

Der JSR ist der offizielle Rahmen für ein Thema, das eigentlich gar nicht neu ist. Seit knapp vier Jahren wird an der WebSocket-Spezifikation gearbeitet, die als Standard unter dem Namen RFC 6455 verabschiedet wurde. Entsprungen ist sie aus der wahren Revolution des Webs: dem HTML5-Papier. Eine Zusammenfassung der wichtigsten Meilensteine können Sie im Leitartikel vom Matthias Weßendorf ab Seite 30 nachlesen. WebSocket stellt eine bidirektionale TCP-Verbindung bereit und will in Sachen Webkommunikation alles besser machen als das Web Application Model Comet.

Scalability

Warum ist das jetzt etwas Besonderes? Es geht bei WebSocket um die Reduzierung von Network Traffic, es geht um Wartezeiten im Web und wie man sie verhindern kann. Es geht auch um das Mobile Web und die Wartezeiten dort! Deshalb ist auch Google von diesem Standard begeistert. Ian Hickson, Googles HTML5 Spec Lead sagte vor ein paar Jahren: „Reducing kilobytes of data to 2 bytes…and reducing latency from 150 ms to 50 ms is far more than marginal. In fact, these two factors alone are enough to make WebSockets seriously interesting to Google.“ (siehe http://websocket.org/quantum.html). Zwei Bytes sind es mittlerweile nicht mehr, verlockend bleibt es aber allemal.

Aber Google stimmt mit Nein

Überzeugende Worte von Hickson, trotzdem war Google das einzige Unternehmen im JCP-Komitee, das gegen den WebSocket-JSR stimmte. Red Hat und Twitter enthielten sich. Grund ist die Lizenzbedingung. In der Spezifikation ist nämlich zu lesen, dass für den Zugriff auf die Quellcodes eine jährliche Gebühr von 35 000 US-Dollar anfällt.

Auch die Ja-Stimmen von IBM, Intel, HP, Fujitsu, Azul Systems, Sou Java, Eclipse Foundation und London Java Community sind nur ein „Ja auf Zeit“: Wird die Lizenzfrage nicht geklärt, könnte der Final Ballot der Spezifikation abgelehnt werden.

Bis es soweit ist, wandern aber noch viele Daten durch den Krakendarm. Für den Moment ist es wichtig, dass an der WebSocket-Spezifikation weiter gearbeitet wird und sich mehr und mehr Projekte um die Spec herum entwickeln, Projekte wie beispielsweise jWebSocket for Android, Pusher oder das Kaazing WebSocket Gateway, um das es in dieser Ausgabe auch gehen wird. Ach ja, und für alle Zweifler haben wir noch „die andere Seite“ im Heft: Oliver Wehrens schreibt über Server-Sent Events und warum es nicht immer WebSocket sein muss.

In diesem Sinn wünsche ich Ihnen viel Spaß bei der Lektüre dieser Ausgabe!

Claudia Fröhling, Redakteurin Java Magazin
Twitter: @JavaMagazin
Google+: gplus.to/JavaMagazin

JAX-TV

JAX 2011: DIY Coffeescript – JavaScript the good Parts
von Sebastian Deutsch
Viele Programmierer scheuen JavaScript aufgrund des Fehlens eines klassenbasierten Vererbungssystems oder wegen des komplexen Konstrukts der Closures. So schön JavaScript auch ist, für einen Neuling birgt JavaScript viel Potenzial sich in den Fuß zu schießen. In diesem Talk geht es um CoffeeScript, einem Präprozessor für JavaScript, der genau diese Unzulänglichkeiten beseitigt. CoffeeScript ist quasi eine Abstraktion von JavaScript, die sich viel Gutes bei anderen Sprachen wie Ruby oder Python abschaut, ohne den Bezug zum Original zu verlieren.

Mehr JAX TV finden Sie auch online unter http://vimeo.com/jaxtv

Tools

PDFOne (for Java)
PDFOne ist eine Java-Komponentenbibliothek, die ein Set von APIs zum Erstellen, Bearbeiten, Anzeigen, Drucken, Mergen, Splitten, Reorganisieren, Verschlüsseln, Entschlüsseln, für Lesezeichen, Anmerkungen und Organisieren von PDF Dokumenten, zur Weiterverarbeitung von PDF-Formularen und zur Erledigung weiterer PDF-bezogener Aufgaben für die Java-basierte Anwendung bereitstellt.

XtremeFontEngine (for Java)
XtremeFontEngine ist eine 100 Prozent Java-Font-Rendering-Engine, die es ermöglicht, verschiedene Arten von Schriften (auch diejenigen, die nicht von JVMs unterstützt werden) zu erstellen.

XDEV 3.1
XDEV 3 gilt als Pendant zu Microsoft Visual Studio LightSwitch. An der Basis ist XDEV 3 eine vollwertige Java-IDE wie Eclipse und NetBeans. Den Unterschied machen RAD-Tools und Assistenten, die vor allem die Entwicklung datengetriebener Businessanwendungen unterstützen. Grafische Oberflächen lassen sich mithilfe eines Swing GUI-Builders per Drag and Drop designen, und bei Datenbankabfragen wird der Entwickler von einem Query-Assistenten unterstützt. Die zentrale Komponente des RAD-Konzepts ist das integrierte XDEV Application Framework, das u.a. ein Data Binding zwischen GUI und Datenschicht zur Verfügung stellt. Datenbankzugriffe, Visualisierung und Persistierung werden damit weitgehend automatisiert.

RestKit
RestKit ist ein Objective-C-Framework für das iOS, um REST Web Services einfach und schnell zu Integrieren. Außerdem erleichtert RestKit die Verarbeitung des HTTP Request/Response-API und stellt ein Objektmapping zur Verfügung.

Weld 1.1.5 Final
JBoss Weld ist die Referenzimplementierung des JSR 299: Java Contexts and Dependency Injection for the Java EE platform (CDI). Weld 1.1.5 beseitigt drei Bugs und beinhaltet ein Upgrade auf SLF4J 1.6.1 (Simple Logging Farcade for Java).

Resin Open Source 4.0.26
Resin ist ein Java EE 6 Certified Application- und Webserver. Diese Version ist mit eingeschränkten Fähigkeiten, bietet aber voll ausgestattete Webserver und Application-Server.

weberknecht 0.1.1
weberknecht ist eine Java-Implementierung der Clientseite des IETF-WebSocket-Protokolls für den Einsatz in Java-SE- oder Android-Anwendungen.

Jetty 8.1.2
Jetty ist ein Webserver und javax.servlet-Container und bietet Unterstützung für WebSockets, OSGi, JMX, JNDI, JASPI, AJP und für viele andere Integrationen. Die aktuelle Version beinhaltet nur Bugfixes.

WebKit r110695
Webkit ist eine Webbrowser-Engine, die aus der HTML-Engine KHTML und der JavaScript-Engine KJS entstand.


Weitere Ausgaben

X
- Gib Deinen Standort ein -
- or -