Java(TM) Web Start Documentation

Developer's Section

Java Web Start 1.6.0 Release Documentation

Java Web Start 1.5.0 Release Documentation Java Web Start 1.2 Documentation Java Web Start 1.0.1 Documentation Documentation (applicable to all Java Web Start Releases)

Troubleshooting / Feedback

Technical Support

Sun Support AccessSolaris Java 2 SDK Support Services

Java Web Start Software and the Java Community Process Program

Java Web Start provides a flexible and robust deployment solution for Java technology-based applications based on the Java Community Process program (JCP). The technology is being developed through the JCP program as JSR-56: The Java Network Launching Protocol & API (JNLP), which provides a browser-independent architecture for deploying Java 2 technology-based applications to the client desktop.

Java Web Start technology works with any browser and any Web server. Each application developed for use with the Java Web Start software specifies which version of the Java 2 platform it requires, e.g., version 1.2 or 1.3, and each application runs on a dedicated Java Virtual Machine (JVM).

Auto-download of Software from Sun

A main feature of the Java Network Launching Protocol and API technology is the ability to automatically download and install Java Runtime Environments onto the users machine.

For example, an application might depend APIs in Sun's Java Runtime Environment 1.4.0 (or later). When a user first accesses this application, the Java Web Start software will download all the needed files for the application, as well as download the Java Runtime Environment (JRE) if the requested version is not available locally. The ability to automatically download a JRE is one of the key features to ensure robust deployments. It ensures that the JRE that your application is tested on will be available on the user's machine, as well as make it possible to seamlessly upgrade to improved versions of the Java 2 platform over time.

The Sun auto-download feature simplifies Java Web Start deployments because it makes commonly used software readily available for use with Java Web Start. Typically, only an extra line has to be added to a JNLP file to take advantage of this feature. In contrast, without the auto-download feature, developers would be forced to repackage and host the software themselves - adding a significant overhead to the deployment burden. As an added benefit to both developers and end-users, this minimizes the download time for an application since each JRE will be shared between multiple applications.

The packages currently available for auto-download are:

  • Java 2 Runtime Environment 1_3_0_02 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_3_1_08 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_3_1_09 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_3_1_11 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_0 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_1 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_1_02 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_1_07 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_2 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_2_01 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_2_02 for Windows/i586, Linux/i586, and Solaris/Sparc
  • Java 2 Runtime Environment 1_4_2_04 for Windows/i586, Linux/i586, and Solaris/Sparc

Because the Java Web Start Java Runtime Environment installer uses Verisign certificates, the autodownload from http://bit.ly/xyGWeN works only if the client machine has version 1.3 or later of the Java Runtime Environment installed.

How to request a specific version of the Java Runtime Environment

The <j2se ...> element is used to specify the set of Java Runtime Environments that your application supports. They can be specified both as a vendor-independent platform-version and as a vendor-dependent product version.

Specifying a platform version: Currently, there are four different platforms supported: 1.2, 1.3, 1.4, and 1.5. For example:



<j2se version="1.4 1.3+">
<j2se version="1.4">

Specifying a product version: A product version is specified by including a vendor-specific URL from where to download the JRE.

Example 1 <j2se version="1.4.2*" href="/products/autodl/j2se"> The vendor-specific URL for Sun's JREs are: http://bit.ly/xyGWeN.

In the above example, a product version that has 1.4.2 as a prefix is requested, e.g., 1.4.2, 1.4.2_02, 1.4.2_04 would match.

Example 2

<j2se version="1.4.0_01+" href="/products/autodl/j2se">

To request a particular version, you should specify a particular dot-dot release (e.g., 1.4.2* as shown above). Specifying a dot-dot-dot release (e.g., 1.4.2_02) is possible but not recommended - since it might force your customers to use an unsupported JRE. Specifying a dot-dot release assures that your customers always will download the latest supported release.