Deja-vu or finally worthwhile?
JavaFX to go fully open source by year’s end - will we start to use it?
As JavaOne kicks into gear, many attendees were wondering
which technology would feature most at Sunday’s JavaOne Strategy
To some, it probably felt a little like déjà vu as Oracle put plenty of emphasis on their Rich Internet Application platform, JavaFX. Java’s steward has spent many years now trying to atone for their errors in the bungled 1.x series in 2009.
Developers just didn’t see the need for it (some still might not now) and Oracle’s promised client revolution never materialised. Why would you want to learn a new scripting language when there are arguably better alternatives? At the time, client-side Java just wasn’t worth the effort.
Fast forward to late 2011, when JavaFX 2.0 arrived with a new set of Java APIs opening up the capabilities to all, which you’d no doubt agree is far more compelling.
Still, Oracle still faces an uphill struggle to convince Java developers who’d dabbled with the RIA technology the first time round to come back to the rebooted version. Strategic usability moves over the past year from the JavaFX team paved the way for some to jump back, but possibly not as many as Oracle wanted.
At last year’s JavaOne, the drive to make JavaFX properly open source began, revealing that 2.x would be open source. This week, they promised that JavaFX would be fully open source by the end of the year.
Seeing JavaFX running on a Raspberry Pi at this year’s keynote might be the concrete proof needed that JavaFX was worth picking up. Oracle’s VP of Development, Nandini Ramani, announced that JavaFX would be coming to ARM devices through a developer preview, much in keeping Oracle’s recent embedded moves. This new willingness to embrace emerging technologies could be the lifesaver that JavaFX needs to create a community around it.
But for JavaFX to truly get the support it needs, there needs to be innovations within desktop Java, too. Coupled with the keynote, rich web application experts Canoo were the first of many to make a big announcement, open sourcing their remoting solution Dolphin under an Apache 2.0 license.
The bridging project tackles a common complaint of Canoo’s customers - they want to keep application logic on the server, whilst fully exploiting all the client technologies available to them (JavaFX, Swing, SWT and Eclipse RCP for example). The disconnect between Enterprise Java and Desktop Java is a well-known issue within the space, which until now hadn’t really been tackled.
Dolphin builds upon REST to link the server and client, in what Canoo are calling a ‘shared presentation model’ - the server decides how to display the application, while the client chooses what to display, splitting the load.
Dolphin isn’t yet at a 1.0 version, which could put people off, but Canoo say that it is in production environment, with some of their business partners using it with JavaFX, Swing and Eclipse RCP. They’ve also offered commercial Dolphin support to anyone who might be considering using the tool within architecture or as part of a new project.
With projects such as Dolphin giving developers what they actually want, is it time to dub JavaFX “the comeback kid”? Could it even replace Swing in the long run? This tweet (retweeted 13 times) from Red Hat Principal Software Engineer Dan Allen suggest it might have turned the tide.
After five years of Oracle lauding it without much substance, it seems JavaFX is may actually be showing some promise. The problem is that a JSR is only coming with Java 9 (2015). By that time, will it lose its relevancy once more?