RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


JavaFX Enters the RIA Race

JavaFX Script is a new scripting language from Sun meant to provide rich user interfaces to compete with AJAX, Silverlight, and many other RIA technologies. What does JavaFX look like, how does it work, and will it succeed? Those questions and more are answered in this introductory review of JavaFX.

ich Internet Application or RIAs are all the rage in application development circles now. How do you make web applications behave like more traditional desktop applications? You remember desktop applications don't you? Harken back to the days of drag-and-drop, slide bars, dynamic widget enabling, disabling, background coloring, etc.—all to make the user experience more pleasing without the "flash-bang," slow-performing Web page refreshes. Those were some user interfaces!

AJAX is the technology most often used today to provide RIAs that present the closest thing to desktop applications offered over the Web. AJAX has been a part of a new Web revolution,heralded as Web 2.0. The unfortunate aspect of AJAX is its dependency on the platform. Namely, if you have ever written an AJAX application for mass distribution, much of the application code is littered with "if Microsoft IE do...if Mozilla or other browser do..." conditionals. Efforts by the W3C and others to standardize AJAX technologies are helping, but they may not be enough when you're also considering needs to bring more dynamic applications to other platforms like mobile and consumer devices.

AJAX is based on relatively older software technology. JavaScript, DOM, XHTML, etc. have been around a while and are seeing rebirth in RIA needs. However, industry leaders are waking up to the RIA need and are looking to satisfy it with some new (and some might say better) technology. For example, Microsoft has stepped up with XAML (Extensible Application Markup Language) in the Windows Presentation Foundation of .NET 3.0, where it is used as a user interface markup language to define UI elements, data binding, event handling, etc. Their Silverlight product provides a subset of WPF functionality on mobile devices and other platforms.

JavaFX was heavily spotlighted at this year's JavaOne conference and it's clearly Sun and the Java community's most current entry to the RIA competition. JavaFX is actually intended to be a family of products initially comprised of JavaFX Script and JavaFX Mobile. JavaFX Script (JavaFX for short) is a scripting language meant to provide rich user interfaces using syntax that resembles JavaScript and Scalar Vector Graphics (SVG). As its name implies, JavaFX Mobile is intended for use on mobile platforms.

This article introduces you to the new JavaFX Script language. I point you to some JavaFX syntax and API tutorials and take you through some of the interesting characteristics that might make JavaFX appealing. It is a technology still in its infancy, but if you are thinking RIA long term, it's a technology worthy of inspection. Why? As the JavaFX FAQ states:

"JavaFX Script will enable developers to more quickly and easily develop RIAs and next-generation services that can be proliferated across virtually any device—from desktop browsers and mobile devices, to set-top boxes and Blu-ray Disc DVDs—securely and without local installation."

Java is the dominant application platform on handsets. Marry that lead, the "write once, run anywhere" mantra, and the need for RIA, and you start to understand why Sun is pushing hard to establish JavaFX as a powerful development technology. Sun wants to keep and expand Java deployments and JavaFX is a means to that goal.

A recent (July 2007) podcast given by Jacob Lehrbaum, Sun's JavaFX Mobile product line manager, suggest that Sun will be working with device vendors this fall in order to bring JavaFX Mobile-capable devices to market in 2008. Even development tools are still a few months off. In the podcast, he says "I think it's a little bit early to start working with [JavaFX Mobile] as we are still defining the platform and building out some of those capabilities." He recommends getting familiar with JavaFX Script via OpenJFX (more below) and NetBeans plugins as a means to get ready for this new mobile device capability.

Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date