Nexaweb Launcher is based on an open source project (GetDown). It is a solution that Nexaweb provides in responses to the announcement of Oracle that it is going to obsolete WebStart technology. Nexweb 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:
- nexaweblauncherNexawebLauncher.exe exe: It is a shell program that when it is invoked by the file association, it first checks through the system to locate an existing installed JRE, and uses it that to launch getdown-1.7.1-SNAPSHOT.jar
- getdown-1.7.1-SNAPSHOT.jar is an jar jar: It is a JAR file that interprets a nexaweb Nexaweb file and then launches Nexaweb web application from the web server.
- The file with extension nexaweb , it ".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 nexaweb launcher it is able to associates it associate itself with the file extension ".nexaweb", and for that it can launch itself when the user double clicks the file with an extension nexaweb and its work flows ".nexaweb". Its work flow is as below:
- First, The users download the The user downloads the file with extension ".nexaweb froman " from a URL of type: http://< your host>:<your port>/<your application>/runNexaweb serviced runNexaweb serviced by runNexaweb.jsp JSP file and save saves itNext, they double click nexaweb
- User launches this ".nexaweb" file
- As the computer opens nexaweb opens ".nexaweb" file, it invokes nexaweblauncherinvokes NexawebLauncher.exe which is associated with the ".nexaweb" file type
- nexaweblauncherNexawebLauncher.exe exe interprets the file and generates an instruction list including including downloading the jars, resources file, 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 bring a Nexaweb run the Nexaweb web application alive
- And then, it executes It executes the instructions and launches the nexaweb web Nexaweb web application
- After the nexaweb 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 jnlpJNLP (Refer to: Migrating Java Applet to Java Web Start). If the nexaweb Nexaweb web application is dependent on some other jarsJAR files, those jars too must be added into WebContent directory.
Nexaweb launcher uses Getdown’s digester to generate jar’s JAR file's digest and use the digest it to check if it needs to download a new version jar of the file or not. So the users need to digest all jars the JAR files the web application needed needs and put them in the same directory with GetDown.txt which is just the same file as run.nexaweb in with a different name. After generating the digest files, they need to be added into the WebContent directory too as the jars. JAR files.
Related articles
JDK 9 Release Notes Deprecated APIs, Features, and Options
Migrating Java Applet to Java Web Start to launch Nexaweb applications