Sun JavaFX: A Move Into the RIA Space

Sun Microsystems rolls out JavaFX to challenge Adobe AIR, Flex and Microsoft Silverlight, in the highly competitive rich Internet application space.

With rich Internet applications becoming a key trend in Web and application development, it’s not surprising that more development platform vendors are looking to grab a piece of the rapidly growing space.

In recent years, the RIA space has been dominated by Adobe Systems’ Flash, Flex and AIR platforms, with Microsoft making a strong push with its Silverlight offering.

That said, for many developers, RIAs are nothing new. In fact, those developers can point to a platform that has been providing RIA capabilities for many years now – Sun Microsystems’ Java.

After all, Java has always made it possible to deliver Web-aware applications for both the browser and the desktop. Java also has all of the GUI features that one would find in any development platform.

The problem has been that Java is pretty much for developers only. While systems such as Flash can be easily learned by talented graphics and Web professionals, Java has always required a developer skill set.

However, with the release of JavaFX 1.0, Sun hopes to change all of this. JavaFX is designed to bring Java fully into the modern world of RIAs and also includes features meant to entice Web and graphics professionals to give it a try.

Sun’s move in this area makes sense. The advantage of RIAs is that they tend to offer the best of both Web and desktop applications. They can seamlessly use data and content from the Internet, but also have interactive interfaces that tend to be more advanced than those found in browsers. In addition, the most recent RIA platforms can even run on desktops independently of Web browsers.

It’s an area Sun wants to exploit, and right out of the gate, JavaFX has some important advantages. First, it is based on the standard Java run-time, which means that—unlike Microsoft’s Silverlight—it doesn’t require users to download a special dedicated run-time, which gives it a chance to approach the large installed base that Flash has.

It also can take good advantage of the underlying Java code, meaning that it can do more data-intensive work than other RIA platforms. In addition, the strong presence that Java has among those developing mobile applications could give JavaFX a leg up in the all-important mobile development space, an area where other RIA platforms are still struggling to gain ground.

But this 1.0 release has more than its fair share of typical first-version problems and shortcomings. The biggest issue is that despite the promise of mobile deployment, JavaFX does not currently support mobile platforms. The only feature in this area is a beta mobile emulator for developers who want to test mobile JavaFX applications. In addition, despite Java and Sun’s traditional Linux and Unix offerings, the JavaFX development tools run only on Windows and Intel-based Macs.