Insights and updates on Java SE and OpenJDK from the Java Platform Group Product Management Team

  • January 5, 2015

Java Web Start in or out of the browser

Guest Author

The Java Runtime Environment offers a number of ways to run applications. On client systems, one common method is Java Web Start. It allows applications to be launched through browsers or directly via the Java Network Launching Protocol (JNLP). This capability was introduced back in 2001 and has been used by many applications throughout the years. It is quite common in enterprises and certain countries.

As browsers evolve, many users still need to continue to run these applications. Since Java Web Start applications can be launched independently of a browser, as they don’t rely on a browser plugin, in many cases they can provide a migration path from Java Applets.The business owners of these applications may have additional questions about how the support lifetime of Java Web Start affects their applications.

JDK Support Timelines

At present, Oracle offers two publicly available, supported versions: Java SE 7 and Java SE 8 (most current). Both are available through the Java.com website and Oracle Technology Network (OTN). I encourage users and developers to upgrade to Java SE 8.

Oracle’s support timeline is described on the SE Roadmap web page. Companies or ISVs that require support and/or updates after the end of public availability can obtain a commercial solution. This timeline extends well beyond the end of public updates and includes patches/updates to the Deployment Technology for Applets and Web Start applications as described.

Commercial support customers (including ISVs) may continue to use JDK 7 and JDK 6 for years beyond its end-of-public-updates and receive regular updates. This includes the ability to file support tickets with Oracle.

Other users should upgrade to Java SE 8.

Running Web Start Applications

Users that need to run Web Start application may launch that application through a web browser such as Internet Explorer, Mozilla Firefox, Apple Safari, or Pale Moon. Chrome users may consult "How do I use Java with the Google Chrome browser."

Most users should obtain Java directly from the Java.com website. Advanced users may download via the Oracle Technology Network and should choose the correct 32 and/or 64 bit version.

Controlling prompts and dialogs

Java prompts and dialogs about execution can be controlled through Deployment Rule Sets or the Exception Site List. Deployment Rule Sets work well for enterprises that need to run different Java applications with different Java versions. The Exception Site List works well for an end-user that wants a specific Java RIA to run. Additional details can be found at:

Companies that need to create Deployment Rule Sets may consider using the Advanced Management Console.

Many browsers have their own dialogs and control mechanisms. For example Internet Explorer has a post about their dialogs with the phrase, "Can this feature be disabled if my enterprise requires an older version of the Java runtime?"

Running Web Start applications outside of a browser

Web Start applications can be launched directly with a JNLP file. Application developers may consider providing a direct link for users to download their JNLP files.

Example instructions on Windows:

  • Right-click any JNLP file that you have downloaded.
  • Select Properties.
  • Next to “Opens With,” click the Change button.
  • Locate your Java version and choose javaws.
    The recommended program is “Java(TM) Web Start Launcher.”
    Example path: C:\Program Files\Java\jre1.8.0_40\bin\javaws.exe

Additional Deployment Options

With changes in web browser plugins, application developers may consider alternative distribution methods. Several options are available:

Native Windows/Mac/Linux packages

The javapackager command allows developers to create standalone native install bundles that do not require a separate JRE installation. The native options include: installer, image, exe, msi, dmg, rpm, and deb.

This is ideal for desktop applications, where the user may not have their own JRE installed and just wants the program to run.  It may not be appropriate for server-based applications where an administrator would want full control over the environment.

Inverted browser control

JavaFX contains a feature called WebView, which enables applications to use an embedded version of WebKit to render HTML5 content. As a result, developers can create applications that use this browser to access remote applications.

For example, a developer could create a miniature web browser that makes it easier for their users to launch remote applications. WebFX is a prototype example of this behavior.

Join the discussion

Comments ( 1 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.