As mentioned in previous posts, and in Weiqi Gao's Game Changing Move post, the purpose of Java SE 6 Update N is to solve the JRE deployment and performance issues that have hindered the adoption of Java rich clients. This is great news for JavaFX Script as it is dependent upon the JRE (Java Runtime Environment) being present on the client machine. Java Kernel, which was the remaining feature of Java SE 6 Update N to be implemented, is now in place. This feature allows the JRE to be segmented into small bundles, each of which downloads and installs quickly. The first bundles provides just enough of the JRE to run a simple "Hello World" program. Java Kernel will then proactively download and install the remaining bundles. The major benefit of this approach is that the user doesn't have to wait for a large JRE download before running a Java or JavaFX Script program, because the bundles that are needed by the program are downloaded in the background as the program is starting up. Note: When I tried this, 35 bundles were downloaded, ranging in size from 52 KB to 2610 KB. Here is the message box that appeared when I invoked a JavaFX Script application via Java Web Start just after the Java Kernel had been installed:
Please also note that even if a Java or JavaFX program is not invoked, the Java Kernel will continue installing bundles until the entire JRE is installed.
For more information, see the Java Kernel FAQ. Also, you can obtain the latest release of Java SE 6 Update N from this page. Of course, if you download and install Java SE 6 Runtime Update N build 10, you won't see the Java Kernel in action, because its purpose is to download the JRE. If you want to observe the Java Kernel in action, just download the Java SE 6 Runtime (JRE) Update N build 10 Kernel Installer from that page (after having removed Java SE 6 Update N if it was already on your machine). The FAQ referenced above explains how to tell when the Java Kernel has not yet finished downloading the complete JRE.
So here's the really neat part for compiled JavaFX Script: The plan is to make bundles out of the JavaFX platform jar files, as well as to leverage the automatic update facility of Java SE 6 Update N to keep the JavaFX jar files current. As Chris Oliver puts it, "we have to be competitive with the Flash experience".
Here are a couple of other interesting JavaFX Script-related things to check out:
- A JavaFX Script tutorial from IBM
- Robert Eckstein's video blog on a few of his favorite things about JavaFX Script. I think that he should have gotten the von Trapp family to sing about them in the background ;-)
Compiled JavaFX Script and Java SE 6 Update N are quickly coming together to the point where we'll soon have fast deploying and executing JavaFX Script RIAs (rich internet applications) that are simple, elegant, and leverage the power of Java. The next few months are going to be exciting, and in my opinion, will revolutionize (and greatly simplify) the way we develop internet applications.
JavaFX Script Boot Camp Announcement
As a heads-up, I will be offering a JavaFX Script 2.5 day "boot camp" on Wednesday, April 9 through Friday, April 11, 2008 (ending at noon) in Indianapolis, Indiana. This course is designed to get you quickly up to speed in JavaFX Script application development. A primary reference for this course is my JavaFX Script book, but the course has its own syllabus which includes material covered in the book as well as up to the minute developments in compiled JavaFX Script. Registration will open soon, and for this pilot class I am accepting 12 students. The cost of this pilot class will be 900 USD per student. Additional students from the same organization will be 600 USD. You'll need to bring your laptop computer with the latest versions of the JavaFX Script downloads (which I'll specify in more detail as the class date approaches). The prerequisite for the class will be the completion of a JavaFX Script programming assignment that I'll post soon to this weblog. I'm looking forward to teaching this class and hope that you can attend!
More details to follow,
Jim Weaver
JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications
Immediate eBook (PDF) download available at the book's Apress site
Matthew,
Creating a set of tutorials for creating JavaFX Script Applets would be great for the community. As a heads up, the compiler team is very close to having JavaFX Applets working. You may recall that I did a Happy New Year post that has an applet, but it doesn't use the classes that the compiler team created since then. I'm told it won't be long.
By the way, I'm planning on teaching the JavaFX Script Boot Camp that I mentioned at the end of this post in other locations as well. I'd be happy to consider doing one in Australia if there is enough interest.
Thanks,
Jim Weaver
Posted by: Jim Weaver | January 21, 2008 at 10:09 AM
Hi Jim,
Just an idea I wanted to put out there.
If Sun would like to bring Applets back to life they should sponsor some literature, web and print, so that either some of us can reacquaint ourselves with them or new-comers can experience them. I hadn't thought about Applets in about eight years.
If I get the time, outside of my day job, I might possibly put together a short series of tutorials. Maybe five :
1. Hello World Applet
2. Basic 2D Drawing tool Applet
3. CRUD Applet, with Servlet
4. CRUD Applet, with Web Service
5. Map view Applet (JXMapKit / Joshua Marinacci style)
Something like that.
Just an idea. If I don't get there first someone else might. Either way everyone benefits.
Regards,
Matthew
Posted by: Matthew Ryan | January 21, 2008 at 07:44 AM
Hi Jim,
Thanks for your response.
I'm quite enthusiastic now for where things are heading with JavaFX. I just installed NetBeans 6.0 and will start some testing. I have a really exciting project prototype I have in mind that I'm keen to start playing with.
Thanks again
Matthew
Posted by: Matthew | January 21, 2008 at 12:05 AM
Matthew,
To give you my perspective on your "will Applets make a comeback and give Flex/Silverlight a run for their money": I fully believe that the answer is "YES!", in the form of JavaFX Script applets (in the browser) and application (outside the browser/jail).
Thanks,
Jim Weaver
Posted by: Jim Weaver | January 16, 2008 at 07:39 PM