How to associate jnlp file with javaws

My actual version of java is

$ java -version
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)

and it possible to run jnlp file as

$ javaws ContestAppletProd.jnlp

(it's TopCoder Contest Arena)

but I want to run it with simple double click.

When I do right click on file, there is "Open with Other Application" option, but I do not know how to add javaws here.


Solution 1:

You will need to create a .desktop file like described in the this post for javaws to appear in Open With dialog.

In your case you will need to create a new text file in the folder ~/.local/share/applications. Name this file whatever you want, it has to have the extension .desktop. The content of this file has to be the following:

[Desktop Entry]
Encoding=UTF-8
Name=Java 6 Web Start
Comment=Java 6 Web Start
Exec=/usr/lib/jvm/java-6-oracle/jre/bin/javaws %u
Terminal=false
Type=Application
Icon=javaws
Categories=Application;Network;
MimeType=application/x-java-jnlp-file;

Please pay attention that the path to javaws executable in the Exec parameter may be different on your system. You can find out the path to your javaws executable by typing the following command in terminal:

which javaws

or by listing all your JDK/JRE installations with the command:

update-alternatives --display javaws