Book Author, Blogger, a wannabe GUI guy, JavaFX enthusiast, Groovy, mobile phones, AI and most importantly husband and proud father of two awesome kids. Carl is a DZone MVB and is not an employee of DZone and has posted 15 posts at DZone. You can read more from them at their website. View Full User Profile

JavaFX – Java Applets Making a Comeback?

02.15.2010
| 6977 views |
  • submit to reddit

In 2008 JavaWorld had written a great article by Jeff Friesen called “Are applets making a comeback?“. Jeff Friesen poses this question to leading thinkers and doers in the Java developer community. Although the question posed to readers may seem rhetorical, and difficult to answer with an emphatic “Yes“.  I want to try to answer this question in the year 2010.  Right after Oracle has finalized its acquisition of Sun Microsystems, Larry Ellison CEO of Oracle had  an Oracle + Sun Product Strategy Webcast announcing it would invest heavily in JavaFX. So, currently there are lots of things going on with the JavaFX platform. As the JavaFX platform matures the community should mature. So, hopefully I can encourage you to stay more involved in helping the JavaFX community grow.

Are Applets Making a Comeback?

Many Java Developers who have used Applets in the past, have often felt inadequate when competing with the new Web Order due to all the AJAX and Adobe Flash craze.  One of the main complaints about Java Applets was its start-up time. In my opinion ‘Perception‘ is key and when it comes to user experience, it is often said that “If it looks and feels slow, the application is probably not worth running“.  I believe that our society has this urge of instant gratification, so being patient is a hard thing to do these days. During years past Java developers have been longing for that day when Java Applets will make its big comeback. While many Sun engineers are working tirelessly solving this problem it always seems on going (It should).  Sometimes I’ll come across Java developers still feeling unconvinced whenever an update is released. I also have heard people get quite flustered and a little threatening.  I don’t mind if you complain, but do something about it. Then some will say, “What can I do about it?“. Well, the obvious things are forums, blogs and filing bugs. I normally am an early adopter when it comes to Java/JavaFX updates relating to performance increases. Just like folks who decide to buy a new game (Like StarCraft 2) off the shelf they’ll take a look at the graphics requirements such as video ram, etc in hopes their computer can handle it. If not they will likely upgrade their video card or buy a new computer all together. So, upgrading your Java Runtime Environment (JRE) is a snap. So, you are probably wondering where is the part where I encourage you? Well, let me just say with the recent release of JRE 1.6 update 18, I was pretty impressed  with the start-up and reload performance increases. To really see how fast Applets start-up I recommend installing the latest JRE (1.6 update 18), and to please visit Oracle/Sun engineer Rakesh Menon’s blog entry called “JavaFX – Applet Startup Time“. On his site you will see a list of many folks taking some time to record metrics and describing their browser, OS, and hardware (Please note: make sure your Java Console is set to display so that a text dump outputting  the metrics can later be cut and pasted). I also suggest posting your results if you have a different configuration than the others on the list.

*Note: When clearing the cache (from the Java Control Panel) while having Firefox open be sure to restart Firefox or close tab before re-running the applet.

Conclusion

Once you will notice the start-up time increased you should be able to answer the question yourself  “Are Applets Making a Comeback?“. I know I can see the difference and I’m sure you will too. The Java/JavaFX community with tons of libraries and very good boosts in performance, I truly believe it is safe to say with an emphatic “Yes, Applets are making a comeback!”.  I also want to mention about two very cool sites to test drive your new JRE w/start-up/reload enhanced:

Lastly, I want to applaud and thank the Java/JavaFX engineers (Rakesh and company) for making these great strides.

From http://carlfx.wordpress.com/

Published at DZone with permission of Carl Dea, author and DZone MVB.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Thierry Milard replied on Mon, 2010/02/15 - 9:18am

I also wish it cann be true.

I just hope Sun-Oracle makes soon big announcements for java-javaFx  frontend.

 

 

I think 2010 can only be better than 2009 !

Next step for Oracle-sun : Make astounincing announcments concerning java-javaFx-applet :

- for a cool visual result inside browser

- For SIMPLE and FAST building and DEPLOYMENTS (better visual tool, better deployment tool)

- A carrier mobil back for  javaFx 

 

Thierry

 

 

Greg Brown replied on Mon, 2010/02/15 - 10:40am

Yes, applets are making a comeback. :-) Apache Pivot applications are also deployed as applets:

http://pivot.apache.org/

Mark Haniford replied on Mon, 2010/02/15 - 11:37am

It's highly doubtful that applets will make a comeback.  Oracle has a lot work ahead of it to make the whole applet experience seamless like Flash.

And if applets are just going to be about JavaFX then it'll be complete fail.  Groovy, Scala, JRuby, JPython need to be part of the whole ecosystem too.

Once something has failed, it's very hard to make a comeback, but I think competition for Silverlight and Flash would be a good thing.

Greg Brown replied on Mon, 2010/02/15 - 12:08pm in response to: Mark Haniford

Hi Mark,

You can write Pivot applications using any JVM-compatible script language, including Groovy, Scala, etc.

Greg

Carl Antaki replied on Mon, 2010/02/15 - 12:57pm

I don't understand the idea behind Pivot and wonder who will use it. It tries to re-invent the wheel. Why not just extend Swing. Also why does it require me to upgrade to Java 6 Update 18??

Greg Brown replied on Mon, 2010/02/15 - 3:21pm in response to: Carl Antaki

Hi Carl,

The Pivot FAQ includes some background information on the project, including an answer to your question about why Pivot does not extend Swing (also note that JavaFX does not extend Swing, either):

http://cwiki.apache.org/PIVOT/frequently-asked-questions-faq.html

Pivot requires Java 6 at a minimum. However, Java 6 update 10 or later is recommended because it significantly improves performance and overall usability when running in a web browser.

Greg

Mikael Grev replied on Mon, 2010/02/15 - 3:57pm

The heavy flickering while scrolling is a definite show stopper. That needs to be fixed asap.

Cheers,
Mikael Grev

Greg Brown replied on Mon, 2010/02/15 - 4:22pm in response to: Mikael Grev

Hi Mikael,

Are you referring to a Pivot issue? If so, can you be more specific as to where you saw the problem, and what OS/JRE version you are using?

Greg

Anthony Goubard replied on Mon, 2010/02/15 - 5:55pm

On the subject of improving the applet start-up time. I think it would be nice to have a well documented way to create a 0 to 100% loading progress bar, as most of the cold start-up time happens here. Offer distraction and progress indication to the user can also be key in the 'Perception' as you name it.

Flash seems to be better in this field. 

But congratulation to the JRE team for the improvements in update 18 and the fact that codebase is now optional in jnlp files (so it will easier to distribute JavaFX apps).

Carl Antaki replied on Mon, 2010/02/15 - 7:17pm in response to: Greg Brown

Hi Greg,

The fonts look jaggy in the component explorer. Why is that? It would have been nice for Pivot to use Swing and extend it. Swing is mature and stable. Also for me building UIs in XML is not the way to go. The JSON features integration look promissing.

Is anyone using Pivot in the industry?

Carl

Greg Brown replied on Mon, 2010/02/15 - 8:03pm in response to: Carl Antaki

The fonts look jaggy in the component explorer. Why is that?

Are you using Windows 7? Apparently there is some difference in how Java2D text is anti-aliased between XP/Vista and Windows 7. Fixing this is on our to-do list for Pivot 1.4.1.

It would have been nice for Pivot to use Swing and extend it. Swing is mature and stable.

Swing has a number of limitations that are difficult to work around. However, note that Pivot is based on Java2D, so pretty much anything written for Swing or AWT can be easily adapted for Pivot. For example, see the Pivot/JFree project:

http://code.google.com/p/pivot-jfree/

or me building UIs in XML is not the way to go.

We hear that a lot. However, we think it works well (as do the folks behind Flex, Silverlight, GWT, OpenLaszlo, and HTML, apparently). ;-)

Is anyone using Pivot in the industry?

Yes, though it is hard to gauge to what extent since currently our only metrics are mailing list traffic and Google Analytics. FWIW, I am currently using Pivot on a client engagement.

Carl Dea replied on Tue, 2010/02/16 - 12:14am in response to: Anthony Goubard

Anthony,

Regarding a way to make things percieved better or distracting the user. I also want to bring to your attention another blog entry from Rakesh Menon. It has a nice write-up regarding the very scenario you speak of (a progress indicator that updates). http://rakeshmenonp.wordpress.com/2010/02/08/java-download-service-listener/

You may want to look at the DownloadServiceListener API too.

Carl

 

Oliver Weiler replied on Tue, 2010/02/16 - 4:26am

One thing which definitely has to improve is documentation. It's a shame that you're not able to download the JavaFX Language Reference (as PDF) or that there are no JavaFX guides for Java developers (though I'm working on that :-)).

Another fact is: A lot of Java developers don't know that

1.) JavaFX exists

2.) what JavaFX actually is

 

 

 

William Siqueira replied on Tue, 2010/02/16 - 9:04am

@trollhorn This is a fact! It's hard know there's Java developers that don't know JavaFX but I knew a lot! Oracle, if you can read it: FAST! We are uning all our forces to help JavaFX, but we need more from you! And JavaFX can beat Flex and be the technology that gave again this market (applets, mobile...) to java. Go Go JavaFX!

Otengi Miloskov replied on Wed, 2010/02/17 - 11:17am

I vote for Apache pivot, Lots of components, It is getting mature, You can use Java or xml for declare the GUI you have a choice and as someone said it use Java2D so you could integrate with existing Swing apps and the best is it is an Apache project with Apache license.

JavaFX its good for eyecandy but I dont trust the future of it and the license, If Oracle does not have a profit with it, JavaFX dies.

 

Ivan Lazarte replied on Wed, 2010/02/17 - 11:12pm

Pivot is nice! I did see a some flickering when I held down left mouse button and dragged it across the color picker; (and maybe a little on mouseover of the kitchen sink demo) but other than that I was very impressed. I'll be watching it more carefully going forward, keep up the great work!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.