Nexaweb Launcher

Nexaweb Launcher is based on an open source project (GetDown).  It is a solution that Nexaweb has provided in response to the discontinuation of support of Java Web Start by Oracle in their future JDK releases (starting JDK 9). 

Nexaweb  Launcher includes three parts: 

  1. NexawebLauncher.exe: It is a shell program that when invoked by the file association, first checks the system to locate an existing installed JRE, and uses that to launch getdown-1.7.1-SNAPSHOT.jar
  2. getdown-1.7.1-SNAPSHOT.jar: It is a JAR file that interprets a Nexaweb file and then launches Nexaweb web application from the web server.
  3. The file with extension ".nexaweb": It is the instruction list that tells how to properly launch Nexaweb web application


On the client side, the work flow is almost same as JNLP, except that the customer needs to install Nexaweb launcher on their client machines so that it is able to associate itself with the file extension ".nexaweb", and can launch itself when the user double clicks the file with an extension ".nexaweb". Its work flow is as below:

  1. The user downloads the file with extension ".nexaweb" from a URL of type: http://< your host>:<your port>/<your application>/runNexaweb  serviced by runNexaweb.jsp JSP file and saves it
  2. User launches this ".nexaweb" file 
  3. As the computer opens ".nexaweb" file, it invokes NexawebLauncher.exe which is associated with the ".nexaweb" file type
  4. NexawebLauncher.exe interprets the file and generates an instruction list including downloading the JAR files, resource files, digest files, comparing the digest files to see if it needs to download the files or just use the cached files, etc., all which it needs to run the Nexaweb web application
  5. It executes the instructions and launches the Nexaweb web application
  6. After the Nexaweb web application has been launched, it exits. 




On the server side, NexawebImages.jar and NexawebStandaloneClient.jar need to be added into WebContent directory just like with JNLP (Refer to: Migrating Java Applet to Java Web Start). If the Nexaweb web application is dependent on some other JAR files, those too must be added into WebContent directory.

Nexaweb launcher uses Getdown’s digester to generate JAR file's digest and use the it to check if it needs to download a new version of the file or not. So the users need to digest all the JAR files the web application needs and put them in the same directory with GetDown.txt which is just the same file as run.nexaweb with a different name. After generating the digest files, they need to be added into the WebContent directory too as the JAR files.


JDK 9 Release Notes Deprecated APIs, Features, and Options

Migrating Java Applet to Java Web Start to launch Nexaweb applications