The world is increasingly populated by sandboxes -- I'm reminded of it this morning. The Facebook app sandbox, and many others including Java and Flash. Many ways to deliver web application programming. The Java Applet was the original "sandbox" in this web, safe client side programming. It remains an interesting platform, albeit challenging.
Many tout the failure of Java in the browser. From my perspective, which includes a success with the Datek Streamer in 1997 when the story was first building, this is blaming the tool. It should be accepted that running code across the web and over so many layers (JVM, browser, and the windowing and operating systems) is a challenge. And then of course Java is not perfect. Nothing is.
It's come to the point where using Java in the browser is broadly perceived as a risk. There is the fact that Java does not have the installed base -- the virtual ubiquity -- of Flash. But if this "risk to install" is not a killer, then there is no risk aside from producer capacities.
Perhaps the principal technical challenge with Java in the browser relates to the widget set. Swing and AWT are broken (tedious), and their visual products are not as "creatively free" as in Flash. And alternative widget sets are typically messy, like AWT.
For my part, I always begin my own projects with yet another new widget set. Perhaps the latest one will make it. Named "wiz", the previous generations were most often named "viz", and 'w' equals 'v' plus one.
A recent challenge to the serious Java client side is in Video. Flash has it and Java remains a minefield on the subject. JMF is not in JDK6, but reportedly its successor will be in the JDK/JRE 7. JMF works on WebStart, although that's a fairly special solution.
Nonetheless, I'm proceeding into a Java client side for a Webtop for Syntelos. Generally Syntelos is a WebAPI, so the choice of clients is wide open. I want to use Syntelos myself in different ways than are reasonably available to me through any alternative to Java. I'll be publishing Applet and WebStart applications through Syntelos.