< Contents

Setting Up the Web Site


Introduction

Java Web Start leverages existing Internet technology, such as the HTTP protocol and Web servers, so existing infrastructure for deploying HTML-based contents can be reused to deploy Java Technology-based applications using Java Web Start.

In order to deploy your application to client machines, you must make sure that all files containing your application are accessible through a Web server. This typically amounts to copying one or more JAR files, along with a JNLP file, into the Web server's directories. The set-up required for enabling the Web site to support Java Web Start is very similar to deploying HTML-based contents. The only caveat is that a new MIME type needs to be configured for the Web server.

Basic Steps

1. Configure the Web server to use the Java Web Start MIME type

Configure the Web server so that all files with the .jnlp file extension are set to the application/x-java-jnlp-file MIME type.

Most Web browsers use the MIME type returned with the contents from the Web server to determine how to handle the particular content. The server must return application/x-java-jnlp-file MIME type for JNLP files in order for Java Web Start to be invoked.

Each Web server has a specific way in which to add MIME types. For example, for the Apache Web server you must add the following line to the .mime.types configuration file:

application/x-java-jnlp-file JNLP

Check the documentation for the specifics of your Web server.

2. Create a JNLP file for the application

The easiest way to create this file is to modify an existing JNLP file to your requirements.

The syntax and format for the JNLP file is described in a later section.

3. Make the application accessible on the Web server

Ensure your application's JAR files and the JNLP file are accessible at the URLs listed in the JNLP file.

4. Create the web page that launches the application

See the next chapter, Creating the Web Page that launches the Application, for details on step 4.

Installing the Java Web Start Protocol Handler

Java Web Start includes a protocol handler to handle the custom URI schemes jnlp: and jnlps:. Use these schemes as a direct way to start Java Web Start applications.

The protocol handler is automatically installed on Windows and macOS systems. It must be manually installed on Linux systems.

Installing the Protocol Handler for Chrome

If you use the Chrome browser on Linux, manually install the protocol handler that enables you to start Java Web Start applications using the jnlp or jnlps protocol.

In Linux, the xdg-open command is used to open a file or URL in the user's preferred application. To install the protocol handler, configure xdg-open to use Java Web Start for URLs that include the jnlp or jnlps protocol:

  1. Use a text editor to create a file named javaws.desktop in the ~/.local/share/applications directory.

  2. Include the statements shown in the following example.

    [Desktop Entry] 
    Encoding=UTF-8 
    Name=Java(TM) Web Launcher 
    Exec=jre-home/bin/javaws %U 
    Terminal=false 
    Type=Application 
    MimeType=x-scheme-handler/jnlp;x-scheme-handler/jnlps
  3. Save the file.

  4. Run the following commands:

    xdg-mime default javaws.desktop x-scheme-handler/jnlp 
    xdg-mime default javaws.desktop x-scheme-handler/jnlps

After installing the protocol handler, Java Web Start is used to launch applications when the URL contains the jnlp or jnlps protocol. For example, the following URL starts the Dynamic Tree sample from the Java Tutorials:

jnlps://docs.oracle.com/javase/tutorialJWS/samples/deployment/dynamictree_webstartJWSProject/dynamictree_webstart.jnlp

Installing the Protocol Handler in Firefox

If you use the Firefox browser on Linux, manually install the protocol handler that enables you to start Java Web Start applications using the jnlp or jnlps protocol.

To install the protocol handler, add properties to the Firefox configuration:

  1. In the address bar in Firefox, enter about:config.

    If you see a page with a warning about voiding your warranty, click I'll be careful, I promise! to continue to the configuration page.

  2. Add a Boolean property.

    1. Right-click on the page and select New, and then select Boolean.
    2. In the New Boolean Value window, enter the name network.protocol-handler.expose.jnlp and click OK.
    3. Select false for the value and click OK.

    The property is added to the configuration.

  3. Repeat the previous step to add the property network.protocol-handler.expose.jnlps with the value false.

When you enter a URL or click a link that uses the jnlp or jnlps protocol, you are prompted to choose the application to use to open the file. Select Java Web Start Launcher or browse to the javaws.exe file in jre-home/bin.


Copyright © 1993, 2018, Oracle and/or its affiliates. All rights reserved.