Skip to main content

We're Gonna Take On The World

Posted by editor on October 29, 2008 at 7:53 AM PDT

Can the Java Plug-In compete?

It's a strange day for Desktop Java developers when AjaxWorld is publishing an article about using Swing for your client-side technology, while the Java sites are asking whether the Java Plug-In is even viable.

For the Plug-In story, we'll begin with Marvin Warble's editorial, "Can the Plug-In Compete", which he posted both as a Javalobby editorial and as the beginning of a thread on the forums:

I'm not the first person to ask this question, nor will I be the last. It is unbelievable to me that the company that invented the RIA over a decade ago has made little or no progress in this field and presents absolutely no challenge to inferior technologies that came later. JavaScript was named "Java" script deceptively to give it better visibility in the marketplace, but given its dominance in the RIA market, you'd never believe it.

Having walked away from the ever-brittle Ajax market to develop his own Java-based RIA product, Marvin reports that many developers reject it out-of-hand because it depends on the Java plug-in:

This has been a major disappointment to say the least. I knew that applets had developed a stigma over the years, but I didn't realize how pronounced the distaste for the plug-in had become. The negativity and skepticism within the Java community itself is so overwhelming that any hope for wide acceptance of the plug-in seems impossible. The funny thing is that all the developers I have talked with would like the plug-in to become widely accepted, but in order for it to become widely accepted, it would have to be used, however, most website developers are hesitant to use it, because, well, it's not widely accepted.

So how does the plug-in gain traction? In a follow-up post, he says that a scatter-shot appeal to hobbyists and other amateurs won't make the Java Plug-In viable:

Here's the problem - if I can't use Sun's technology to compete in the real world, than I'm forced to use one of those other guy's (MS or Adobe) products. That's just the reality of the situation. Not all of us are hobbyists. Some of us are actually trying to make a living in this business. And to do that we need to be able to compete with those other guys. Is Sun just in it to give hobbyists new toys to tinker with or are they actually trying to compete? If they are interested in competing, which I'm assuming they are since they are a publicly traded company and they have invested the time and money to rewrite the plugin and create JavaFx, then they need to provide the users of their products the means to also compete. Otherwise, in order to survive, we'll be forced to use a product that will allow us to compete. I want to use Java to develop RIA solutions. I don't want to use JavaScript or Flex or Silverlight.

So how about you? What would convince you that you could deploy a business application that depended on the Java Plug-In?

Ironically, we're calling attention to this discussion on the same day that our Java Today section also has an article from AjaxWorld (of all places!) about Developing Rich Client Applications Using Swing, in which Mauro Carniel makes the case for Swing (in an applet or as a Web Start-deployed application) as the front end to a multi-tier enterprise application. He lays out the needed data binding and data retrieval tiers needed to connect an enterprise backend to a Swing GUI, and discusses many Swing-based sets of graphic components, including JGoodies, JIDE, OpenSwing, and more. A promised follow-up article will look at IDE support for Swing client-side development.

Also in Java Today... Elliotte Rusty Harold thought he new the well-worn java.lang.Math class really well. "Imagine my surprise, then, when I recently happened to be reading its Javadoc for possibly the first time in half a decade and realized that the class had almost doubled in size with 20 new methods I'd never heard of. Obviously it was time to take another look. Java 5 added 10 new methods to java.lang.Math and Java 6 added another 10." In Java's New Math, Part 1: Real Numbers, Elliotte focuses on "the more purely mathematical functions provided, such as log10 and cosh."

The SDN interviews Joshua Bloch about the second edition of Effective Java in More Effective Java With Google's Joshua Bloch. In it, he talks about the folly of premature optimization, writing your own libraries instead of using what's already out there, strange things in Java and undesirable side-effects of signed bytes and of autoboxing, Java's complexity budget, the future of Java, and more.

Back in the Forums, haihovu has a practical question about applets in JApplet instantiation outside of EDT. "Hi all, I have recently been stuck with a problem with one of my application which is an applet. The problem was encountered when I attempted to use the Substance look and feel (, whose author is very adamant about adhering to Swing's rule of creating components inside EDT (event dispatching thread) only, and will throw exceptions if this rule is violated."

Finally, BD-J developer elbob is challenged by
Changing Titles and Catch MainMenu call. "I'm using several titles for my BD-J app to show something like "Menu" on the player display when I'n in the Main Menu and show time info when playing clips. Also I can then easily use the Play button in my menu title which is interactive. It seems to be very important to stop a running player before switching to a playlist with autostart! If it is not stopped WinDVD crashes. (haven't tested on other players) I can control everything nicely by receiving ServiceContextEvents. When I get a PresentationTerminatedEvent I just stop my player. The problem starts when I try to access my Menu or a Title via Title search or Disc Menu Button. This makes the player crash again because I don't get the terminated event. Is there a way to receive the DiscMenu call so I can react to it?"

In today's Weblogs, Carla Mott covers
GlassFish V3 logging changes. "Logging in GlassFish V3 has undergone some changes to leverage the logging utility in JDK. This blogs reviews where we are with those changes in Prelude and how to use what is there."

Masoud Kalali keeps it concise with a
One pager review of GlassFish version 3 features. "If you are looking for a simple one page overview of GlassFish version 3 this entry is for you."

Finally, Terrence Barr offers an ME perspective on new client-side SE technologies in Java SE 6 update 10 released. "Admittedly, at first sight this has little to do with mobile and embedded Java - but bear with me.Java SE 6 update 10 is big news because it essentially recalibrates the Java runtime and desktop Java."

Current and upcoming Java


>What would convince you that you could deploy a business application that depended on the Java Plug-In? Well if Sun stopped bundling Google toolbar, Yahoo toolbar and/or Open Office stuff in the installer it would be a great step.

>What would convince you that you could deploy a business application that depended on the Java Plug-In? 1) The user shouldn't have to know what "plug-in" means and the developer shouldn't have to worry about installing that plug-in on the user's browser. Users are afraid of downloads, pop-ups and security warnings: installs and updates are scary. Helpdesk doesn't want to have to have to worry about yet one more software to support. 2) Nobody cares about becoming a "Java plug-in guru" to find out how to remove the Java logo on startup and other stuff that simply tells the user that something they don't understand is running on their PC. It seems Sun tries to get users to accept Java plug-in through their developers yet developers are paid by users and can only go where the users want them to go. I think Sun would have more success if it tried to be appealing to the users instead of being more appealing to the developers...