Java SE 6 Update 10 is out
After a year of waiting and more than a million downloads of the beta (see Java SE 6 Update 10 is out but what does it deliver?), the long-awaited Update 10 is out.
The name makes it sound like a fix pack, but the list of changes is more like a big bang. The most important change is a new plug-in system for running and deploying applets better. It also has a hybrid mode where you can drag a running applet onto the desktop and use it like an ordinary desktop application.
- Improved reliability. The JVM running the applet is
isolated from the web browser at the operating system level. If
something should go wrong while running the applet, or if an
uncooperative applet refuses to shut down, the new Java Plug-In
detects and handles the error condition gracefully; the web
browser is unaffected. - Built-in JNLP support. The new plug-in offers the
capability to launch applets directly from JNLP files, unifying
deployment of Java content both in the browser and out of the
browser (via Java Web Start). Developers can now reuse JNLP
extensions for advanced functionality including the JavaFX run-time
libraries, 3D graphics
via OpenGL, and planetary-scale
terrain visualization within applets. Applets can now access
JNLP APIs for persistent data storage, local file system access,
and other useful functionality from sandboxed code. - Per-applet command-line arguments. JVM command-line
arguments may be specified on a per-applet basis, providing
fine-grained control over options such as the heap size and Java
2D hardware acceleration features. JNLP-launched applets simply
incorporate the command-line arguments and/or system properties
into the JNLP file. Old-style applets can embed these arguments
in the HTML of the web page. - Multiple JRE version support. Each individual applet
instance may request a different JRE version on which to run.
This feature is designed for enterprise customers which prefer to
qualify their applets against either a particular JRE version or
a particular JRE family. Both selection of a specific JRE
version, or any in a particular family, are supported in the new
plug-in. - Improved Java/JavaScript communication. The bridge between
the JavaScript engine in the web browser and the Java programming
language has been completely reimplemented. The new
implementation is backward-compatible and features improved
reliability, performance and cross-browser portability, for both
Java calling JavaScript as well as JavaScript calling Java.
Formerly Mozilla-specific “LiveConnect” functionality, such as
the ability to call static Java methods, instantiate new Java
objects and reference third-party packages from JavaScript, is
now available in all browsers. - Improved user experience. The new Java Plug-In starts
applets in the background, so the web browser always remains
responsive. Applets appear on the web page as they become ready
to run. - Improved applet lifecycle management. Calls to the applet
lifecycle methodsinit,start,
stop, anddestroyare more
deterministic and cross-browser behavior has been improved. The
applet class loader cache and the legacy applet lifecycle,
required for backward compatibility, are fully supported and the
behavior of both has been improved. - Better large heap support. Historically, the maximum heap
size that could be specified for applets via the Java Control
Panel has been limited. This limitation is fixed in the new Java
Plug-In; applets can now utilize as much heap space as
command-line applications. - Better Windows Vista support. Signed applets running in
Protected Mode Internet Explorer on Microsoft’s Windows Vista now
have the same privileges as normal user applications, eliminating
a portability barrier to this platform.
The groundwork for JavaFX is in place. The question is whether it’s too late. Sun ignored applets for a long time, and the technology has acquired a bad reputation in the meantime. We’ll see whether this revival gets anywhere.
Related articles
Related CZ Podcast episodes
- #3 · Java 6 SE, Vývoj webových aplikací
Dagi and Filemon discuss Java 6 and web application frameworks. · Czech audio
- #1 · Vývojová prostředí v Javě
The first CZ Podcast episode looks at Java development environments. · Czech audio