Java Rich Internet Applications Guide > Applet Developer's Guide
This guide covers the following topics:
Java Plug-in technology (hereafter the "Java Plug-in"), which is included in the Java Runtime Environment, enables Java applets to run in popular web browsers on the desktop. The Java Plug-in provides powerful new capabilities to applets in the web browser, while improving the overall reliability and functionality of applets in a backward-compatible manner.
The Java Plug-in runs one or more Java virtual machine instances (JVMs) that connect back to the browser for full interoperability with the surrounding web page. This architectural change offers many advantages and features:
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 Java Plug-in detects and handles the error condition gracefully; the web browser is unaffected.
The 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.
The Java 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 reuse JNLP extensions for advanced functionality including Java Binding for the OpenGL API (JOGL) and NASA World Wind (planetary-scale terrain visualization) within applets. Applets can access JNLP APIs for persistent data storage, local file system access, and other useful functionality from sandboxed code.
The bridge between the JavaScript engine in the web browser and the Java programming language is backward-compatible and features exceptional 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 available in all browsers.
Applets can utilize as much heap space as command-line applications.
JVM command-line arguments may be specified in the HTML of the web page on a per-applet basis, providing fine-grained control over options such as the heap size and Java 2D hardware acceleration features.
Each individual applet instance may request a different JRE version on which to run. This feature is designed for enterprise customers who 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 Java Plug-in.
See the Applet Development Tutorial, a comprehensive Java Tutorial that explains various aspects of applet development and deployment.