by Ed Ort, Sun Microsystems Staff Writer
|
|
In kicking off this year's session titled "Java-Centricity: Java Technology at the Hub of Your Digital Life," Sun Distinguished Engineer and chief technology officer for software, Bob Brewin, focused on rich internet application (RIAs). He noted that RIAs are evolving. "RIAs are typically associated with things that are in a browser only. And if you take a look at where we're going, the future [of RIAs] is about every device connected to the network." Brewin went on to say that not only are RIAs changing, but the rich Internet -- the expanding collection of connected devices, such as Playstation 3s, TVs, MP3 players, mobile devices, and in-dash navigation systems -- are changing too. All of these devices are starting to use the same protocols to talk to the network as well as to each other. |
|
|
Noting the central role Java technology has played in RIAs, Brewin said that Java has been there all along. However, there's been a gap. "While Java is the ideal deployment platform, it hasn't been ideal for content authors and designers." Enter JavaFX technology, a development environment, runtime, and tool set based on Java technology, targeted to meet the needs of content creators and designers. |
To illustrate the power of JavaFX, this session showed off a number of cool JavaFX-powered demos. Of course, the foundation of JavaFX is Java itself, so Brewin first handed the microphone over to Roberto Chinnici, the platform lead for Java EE, to highlight what's new in that platform. Following Chinnici, Danny Coward, chief architect of Sun's Client Software, came onstage to highlight what's new in the Java SE platform. The last segment of the session highlighted several cool JavaFX-based demos.
What's New in Java EE?
|
|
Chinnici started his tour of the Java EE platform by looking at the major objective of the platform's current release, Java EE 5: ease of development. Features such as annotations dramatically simplified things for developers by reducing (and often eliminating) the need to code deployment descriptors. Java EE 5 has been very successful. Chinnici said that the Java EE 5 SDK has been downloaded over 3 million times either standalone or in conjunction with the NetBeans IDE. |
The good news is that the simplification theme will continue in the next release of the platform, Java EE 6, with features such as support for RESTful web services and a more extensive use of annotations across all the web APIs. Java EE 6 will also focus on rightsizing and flexibility.
Rightsizing
By rightsizing, Chinnici meant reducing the ever-increasing size of the Java EE platform to something more manageable. This involves the introduction of profiles, that is, various types of Java EE technology packages, each one designed for a specific use. For example, a web profile would include Java EE services targeted to web developers. A TELCO profile would include services designed to meet the needs of the telecommunications industry. In addition, rightsizing will involve pruning of some technologies, such as JAX-RPC or EJB 2.1, that have been supplanted by newer technologies.
Flexibility
Java EE 6 will also be a lot more flexible by adding extensibility points, making it easier to incorporate the large number of available open-source frameworks and libraries. This will make it easier for people to add technologies or other facilities on top of the Java EE platform. Chinnici pointed out that extensibility in the platform also means treating scripting languages such as Ruby as first class citizens.
Modularity
Chinnici said that rightsizing and flexibility ultimately lead to modularity. "Runtimes, applications servers, and even Java SE are becoming more modular." A good example of that is GlassFish Application Server v3, a fully modular and extensible application server that is based on the OSGI module framework. GlassFish v3 is also open-source and conforms to the Java EE platform. A technology preview release of GlassFish v3 is available. In fact, a second version of the technology preview was just released. To demonstrate the modularity of GlassFish v3, Chinnici called to the stage GlassFish Architect, Jerome Dochez. Dochez demonstrated how modularity makes GlassFish v3 much smaller than previous versions -- as small as 98K bytes -- and gives it a startup time of only one second. He also showed how easy it is to add an extension to the application server, one that immediately participates in GlassFish services such as monitoring.
Multi-Language Support
In another demo, Sun technology evangelist for web services, Arun Gupta (the "GlassFish guy"), and Sun Principal Engineer, Tor Norbye (the "NetBeans guy"), demonstrated GlassFish v3's support for multiple dynamic languages and frameworks such as Ruby, Groovy, Rails, and Grails. They showed a multi-player tic-tac-toe game developed in the NetBeans IDE and deployed to GlassFish v3. First they ran a Ruby on Rails version of the game. Then they ran a Groovy on Grails version. Both ran identically.
What's New in Java SE?
|
|
Next, it was Coward's turn to tell the Java SE platform story. Coward started by focusing on the strength of the current version, the Java SE 6 platform. He noted that there are currently over 7 million Java developers. Each month, on average, there are 750,000 downloads of the Java Development Kit (JDK) and 48 million downloads of the Java Runtime Environment (JRE). |
Now Part of the Ubuntu Package
In a significant announcement for Linux developers, Coward announced that the JDK is now a core package in the Ubuntu distribution of Linux. With this packaging, Linux developers no longer need to manually download anything from Sun. Coward said "it's just there."
Modularity and Multiple Language Support Here Too
The Java SE 7 platform release is scheduled for mid-2009. Like Java EE 6, Java SE 7 will be highly modular. Coward announced a new JSR that will specify the interoperability between the module system in Java SE 7 and OSGi bundling system. This will allow developers who create applications that use OSGi bundles to run them unmodified in JDK 7.
Java SE 7 will also support a raft of dynamic language such as JRuby, JavaScript, and JavaFX Script. Coward said that an active community of Java SE 6 users has already brought over 200 languages to run on the virtual machine (VM). In Java SE 7, work is ongoing to make it easier to write interpreters and language compilers and to speed up the execution of other languages.
Applets Are Back!
For a long time, applets have taken a back seat to web technologies such as JavaServer Pages (JSP) technology. However, Java SE has given new life to applets. The runtime for the latest update to Java SE, Java SE 6 Update 10 (also known as the consumer JRE), currently available as a Beta release, enables applets to run without waiting for the whole JRE to download. Also, Update 10's JRE is enabled for JavaFX. To underscore the Java FX tie-in, Sun engineers Ken Russell and Jasper Potts demonstrated some attractive applets coded in JavaFX Script and running on top of the Java SE 6 Update 10 JRE. What was particularly impressive is that these applets can be decoupled from the browser and seamlessly moved to the desktop.
Cool Java FX Demos
Demos in the last part of the session underscored the strengths and potential of JavaFX technology. But before the demos, Brewin took the stage with Bill Joll, CEO of On2 Technologies to announce that Sun and On2 have signed an agreement to incorporate On2's video codec into the Java runtime.
Here's a brief summary of the JavaFX demos:
- Parleys.com. This web-based Rich Internet Application created by the Belgian Java Users Group (BeJUG), is an excellent learning platform. Among other things, it presents videos of sessions recorded at the BeJUG-sponsored conference JavaPolis. Steffen Janssen, founder of the BeJUG and JavaPolis, demonstrated a beta version of a new JavaFX-based Parleys.com, showing off an animated user interface.
- LiveConnect. Sun engineer Josh Marinacci wrote this social mashup application. Marinacci demonstrated how simple it was to code LiveConnect, an application that brings together social feeds, media, and messages in a single rich graphical interface. And because it links into Java libraries, JavaFX makes it easy to add services to an application like this.
- JavaFX Collaboration. JavaFX technology promises to bring the world of the designer and developer closer together. Sun engineers Martin Brehofsky and Soraya Younossi demonstrated an implementation of this collaborative vision. Taking the designer role, Younossi used tools such as Adobe Photoshop and Illustrator to design the application's user interface. Then she was able to easily pass the components of the design to Brehofsky, who incorporated those assets into a JavaFX-based development tool. It looked like a very smooth productive arrangement, with no need for the designer to learn the development tool or the developer to learn design tools.
-
JavaFX Moon Tanks. Running a multi-player game called Moon Tanks, Sun engineers Chris Oliver -- the originator of F3, which morphed into JavaFX technology -- and Anthony Rogers demonstrated some of the advanced animation, audio, and video effects that developers can produce relatively easily using JavaFX. Each player has a set of tanks that can fire projectiles at an opponent's tanks. What makes this a "moon" tanks game is that the tanks move around a geodesic dome-like moon.
Final Thoughts
I left this session feeling good about where Java technology is and where it's headed. I'm also looking forward to some of the new tools and features that will be unfolding under the JavaFX brand. Indeed, Java technology is and will continue to be the hub of everyone's digital life.