Why do people think Applets are dead? Is it just the legacy of cross browser compatibility issues?
Our RIA framework product, Nexaweb Platform, is Applet based, but it has a base requirement of JRE 1.1 (works with MSJVM). You can write apps targeted at later JREs (most of our customers target 1.3 and later), but that's your choice, not ours.
We've worked hard on the graphics and component model (don't use AWT/Swing) so it looks good even though its JRE 1.1 based. Its not quite as pretty as Flash-based products, but our users are more concerned with maintainability and performance with their apps (one million lines of code, in one case; 1,500+ screens; real-time data access in a FOREX trading application)
I hope that backend performance is better than UI, because UI is tremendously slow. The problem is probably not in Nexaweb code but in Java plugin, but still, come on, dragging a window wireframe (not even with content!) is noticeably slow. I admit I have only Athlon 750, but how much power does one need for a wireframe to keep up with mouse cursor?
Part of our value-add is that we test to make sure the Applet works everywhere: IE 4+, Netscape 4+, Mozilla, Firefox, Safari, etc.
Keyboard support is pretty weak. Tab keys work in data-input forms, but do not work between controls.
* In Order Management Demo, how to select a row with keyboard?
* Select a row with mouse, click Enter. Input form opens up, good. Now, what can I do with keyboard? The order is shipped, so nothing to edit. Notebook tabs cannot be selected with keyboard. There is no Close button, and there is no key combination to close the window.
* Close window with mouse, you back to table grid. The row is still highlighted. Press up or down, nothing happens. Where focus is, and if it is not in the table, why the row is still selected?
* Tab groups are not cyclical
* It is possible to use Shift-Tab to select Order/Invoice or Report header. Now, how do you select report type with keyboard? Pressing Enter does not help, focus is lost again.
* Full-screen mode is not supported for Firefox, part of window is clipped. Apparently Firefox does not provide resize event that app is looking for.
* Full-screen works for MSIE, but you cannot get into it or out of it using keyboard.
* "Print orders" produces horrible flickering in Firefox
* Print preview does not work in Firefox
Native desktop apps are responsive, provide better keyboard and printing support. HTML-based web apps do not require plug-ins, have zero download time and do not bother users with windowing, dragging and resizing. Applets and Flash are in the no-mans zone. Why would I have windows and controls, poorly emulated by a Java or Flash plugin, when I can have native application rendered by native window manager? I also can have native multitasking, device support, etc. Why would I want to have a desktop inside a desktop? An OS within OS?