Ich habe diese Woche die Möglichkeit erhalten, die JavaOne Konferenz in San Francisco zu besuchen; ich möchte in den nächsten vier Tagen an dieser Stelle über die aufgeschnappten Informationen berichten und diese so einem grösseren Publikum zugänglich machen.
Dienstag, 8. Mai
Open Java: Imagine the Possibilities (Opening session)
"Don't be shy", nutze die Möglichkeiten der Konferenz und versuche mit möglichst vielen Leuten ins Gespräch zu kommen. Dies die ersten Worte - well, mit 10-15 Tausend Anwesenden natürlich schier unbegrenzte Möglichkeiten! Danach folgte die Darlegung des Hauptanliegens der diesjährigen JavaOne und deren Slogan "Open Possibilities". Kurz zusammengefasst: das Ziel ist es, mittels Java das Internet respektive Rich applications und Multimedia Inhalte auf Mobile Devices zu kriegen. Flächendeckend, grenzenlos und überall. Im Kontext dieses ehrgeizigen Ziels folgten mehrere Announcements mit Vertretern der jeweiligen Köpfe bei Sun und deren Partnern.

- Glassfish: das bestehende Projekt soll "aufgebohrt" und der Fokus auf Multimedia gerichtet werden. Als Partner hat Sun dazu Ericsson an Bord geholt, mit der Kombination Open Source, Ericsson und Glassfish soll der Enduser Multimedia Inhalte immer und überall zur Hand haben. Auf dem Demovideo wurden etwa auf dem Handheld Musik von zu Hause gestreamt oder dem Sohn das Abspielen des von ihm angeforderten Films verweigert :-).
- Verbesserung im Bereich Realtime Java, java.lang.Thread -> javax.realtime.RealtimeThread. Als "Partner" wurde hier der CIO von Nasdaq, dessen Trading Software auf Java läuft, auf die Bühne geholt - die "Quizfrage", ob Nasdaq 4, 17, 39 oder 89 Transaktionen pro Sekunde zu bewältigen hat, wurde mit der Summe dieser Zahlen beantwortet ;-). Gegenwärtig arbeitet Nasdaq zusammen mit Sun an einer neuen Version der Trading Software, bei welcher die erneuerte Java Realtime API zum Einsatz kommen soll.
- Ebenfalls wurde mit Sony eine Kooperation bei dessen Blu-Ray Technologie angekündigt; da sollen mit Hilfe von Java FX (siehe unten) etwa interaktive Menus über einen Film gelegt oder gar Spiele integriert werden.
- Netbeans 6 mit Fokus Rich Internet Applications wurde ebenfalls auf bald angekündigt, mit Plugin Funktionalität für andere Sprachen wie etwa JRuby, Javascript und C++. Besonders hervorgehoben wurde die starke Unterstützung der Entwicklung von Anwendungen für mobile Endgeräte.
- Besonderen Anklang fand die Verkündung dass OpenJDK nun verfügbar sei (die Webpage werde noch angepasst) und ein sogenanntes Governing Board (bestehend aus 5 Personen), dessen Aufgabe die Lenkung und Steuerung der Community sein wird, gewählt wurde. OpenJDK wird unter GPLv2 lizenziert, was durch die dadurch breite Abstützung auf einer grossen Community ein grosses Mass an Kompatibilität garantiere.
- Faster, faster, faster: das Thema der Performance wird gross geschrieben, auf Herbst 2007 wurde die schnellste je verfügbare JRE angekündigt.
- Java goes Scripting: Ankündigung der JavaFX Produktefamilie mit starkem Endnutzer Fokus. Bestandteile sind vorerst Java FX Script, eine in der SE integrierten Scripting Sprache zur einfachen Erstellung von Rich Internet Applications. Java FX Script gibt es bereits als Preview Release, die dazugehörigen Tools sollen demnächst lanciert werden.
- Java FX Mobile: ebenfalls in der SE integrierte Unterstützung speziell für Mobile Devices. Partner in diesem Bereich ist Yahoo!, neben einer Websuche und E-Mail soll auch Flickr speziell für Java FX Mobile Devices hergerichtet werden, fortan sollen Handies also nicht mehr nur Fotos an Flickr senden, sondern diese auch anzeigen.
PayPal: New Solutions for Java Developers
Als Erstes wurden ein paar Fakten geliefert: Gründung 1998, >140 Millionen Accounts, Milliardenumsatz. Und das Beste: E-Commerce wächst! Aber: "Checkout on the web stinks", dies die Ausgangslage.
Das grösste Problem sei, dass die überwiegende Mehrheit aller Shops für den Abschluss einer Transaktion einen Login auf der Seite oder - wenn noch nicht vorhanden - das Anlegen eines Profils verlangen. Bei diesem Schritt gingen viele Kunden verloren; verhindert werden könne dies, wenn man dem Kunden alternative Zahlungsmethoden anbietet und so das Vorhandensein eines Accounts nicht mehr zwingend sei.
Paypal bietet dazu zwei Möglichkeiten: eine mittels HTTP Post, und, für fortgeschrittene Ansprüche und Einbindung in Software mit Hilfe einer API: Paypal Checkout Express. Das ganze läuft mit 3 API Calls ab - beim ersten Call wird ein Token ausgemacht und der User wird auf eine Paypal Login Seite umgeleitet. Mit dem zweiten Aufruf werden die User Daten von Paypal abgeholt und der dritte und letzte Call schliesst die Transaktion ab.
Mit Hilfe der Digital Money Platform von Paypal kann man noch einen Schritt weiter gehen, unterstützt werden unter anderem auch das Überweisen von Beträgen an Zielkonti, die Suche nach Transaktionen, die Abfrage von Kontoständen, das Verwalten von Zahlungen und bald auch Wiederkehrende Zahlungen.
Für die Verwendung dieser Funktionalitäten sind API Credentials notwendig. Neben der bisherigen auf SOAP basierenden Lösung gibt es neu auch eine RESTful Version. Infos dazu gibts auf http://paypal.com/developer.
Navteq und Partner, JavaOne Pavillion
Am Mittagstisch hatte ich mich aus purem Zufall just neben eine Dame von Autodesk gesetzt, welcher ich gleich nach dem Essen an den Stand von Navteq folgte mich nach dem Essen an den Navteq Stand mitnahm. Autodesk kannte ich bisher nur als Anbieter der CAD Software AutoCAD, bietet darüber hinaus aber auch Produkte im Bereich Location Based Services an. In dieser Produktefamilie etwa den "Family Minder", mit dem die Eltern, dank spezieller mobiler Endgeräte, sich den aktuellen Standort ihrer Sprösslinge anzeigen lassen können. Auch bietet Navteq eine Developer Schnittstelle an, die unter anderem für Geocodierung verwendet werden kann. Mehr Infos dazu unter http://www.autodesk.com/lsdevprogram.
Mit den Leuten von Navteq selbst habe ich mich über das Zustandekommen Ihrer Daten (v.a. Strassenkarten und geocodierte Adressen) unterhalten. Es ist tatsächlich so, dass circa 600 professionelle Vermesser permanent für Navteq auf den Strassen unterwegs sind und diese (samt POIs) so in den Datenbestand von Navteq aufnehmen. Des weiteren tut sich aber auch bei Navteq etwas in Richtung Location Based Services, so sollen sich User von Mobile Devices Dienstleistungen und Restaurants etc. in Städten, in der Näher ihrer aktuellen Position, anzeigen lassen können. Auf meine Frage hin wie die Position der Personen bestimmt werden soll (in Städten ist die Lokalisierung mittels GPS nicht ohne weiteres möglich), kam die sogenannte "WiFi enabled" Lokalisierung zur Sprache, bei welcher aufgrund des Access Points, über den sich der User gerade im Internet bewegt, die Position des Nutzers bestimmt wird. Um an solche Daten (vorerst nur Nordamerika) heranzukommen, ist Navteq eine Kooperation mit der Firma Skyhook Wireless eingegangen. Leider hat die Person am Stand plazes nicht gekannt, staunte aber nicht schlecht als ich ihm sagte dass alle Locations in den USA, wo ich bisher Zugang ins Internet fand, bei plazes bereits bekannt waren.
Ebenfalls am Stand von Navteq mit dabei war deCarta, Anbieterin eines draggable Mapservers mit sehr weitreichenden Konfigurationsmöglichkeiten. So können etwa die Farben bestimmter Mapinhalte oder auch die Schriftart bestimmt werden. Als Beispiel in Europa hat man mir http://www.herold.at gezeigt - die gelben Seiten für Österreich. Mein Gesprächspartner am Stand war übrigens der Referent des Vortrags "Developing Web 2.0 Mapping Applications", welcher leider bereits ausgebucht war und ich darum nicht habe besuchen können. Geoff, so sein Name, verpasste mir darauf eine Schnellbleiche seines Vortrags. Interessanterweise hatte er Endoxon nicht gekannt, beim Rumspielen mit der Karte auf local.ch hat er dann aber recht interessiert "ah, digital zoom", "vectors" und andere Dinge gemurmelt :-). Insgesamt zeigte er sich natürlich erfreut über die aktuell hohe Brisanz des Themas Mapping und meinte dass das Javascript API von Google hier vorallem "Schuld" sei daran, zuvor sei es in diesem Bereich lange eher ruhig gewesen.
Integration Gets All Mashed Up: Bridging Web 1.0 and Web 2.0 Applications
Der erste Satz des Referenten: Mashup ist nicht gleich Google Maps mit irgendwas! :-) Und bald würden Enterprise mashups stark an Bedeutung zunehmen. Bei dieser Art von Mashups geht es darum, Daten meist interner Applikationen durch den Anwender (weg vom Coden, hin zum Zusammenfügen) mittels Wizards zu konkreten Fragestellungen fallbezogen kombinieren zu lassen. Web 1.0/2.0 darum, weil diese internen Applikationen meist in "1.0 Form" vorliegen, die Mashups aber "2.0" sein sollen.
Die Nachteile von Web 1.0 (wenn es um die Wiederverwendung der Inhalte oder Funktionalitäten geht): meist starke Kopplung und Aufwand. Handkehrum ist eine sehr lose Kopplung bei Web 2.0 der Fall. Bezüglich Syndication wurde angeraten das gut standardisierte Atom dem den Geschmäckern der Entwickler ausgesetzten RSS vorzuziehen.
Wie dies mit den Widgets genau aussehen soll, wurde nicht eingehender besprochen; ein sehr einfaches Beispiel hat der Referent allerdings mit dem "Kapow Mashup Server" vorgeführt.
Die folgende Grafik zeigt auf, wie diese Enterprise Mashups funktionieren sollen.

Um diese zu ermöglichen, müssen einfach gesagt alle alten Applikationen mit sogenannten "Widget Enabler" ausgestattet werden. Diese ermöglichen dem Endnutzer (resp. den Widget Builder) bei der Erstellung der Mashups auf die Daten und Funktionalitäten der Applikationen zuzugreifen.