It would be inconvenient to run a Java application using Java Web Start. This would eliminate the need to uninstall or install the Java hardware manager.
Another alternative is to use the built-in browser inside Java. I suppose this is not an option since you are very dependent on Javascript (I suppose to provide a rich customer experience).
If you already need to install something on the client machine, why did you decide to do this using a web application?
Speaking from experience: We had a Java EE application that needed to be printed to PoS printers on a client site. We installed a small synchronizer application that connects via SSH and synchronizes all client files. Subsequently, it loads the JAR and executes the program. This program connects via RMI to the server and subscribes to the JMS queue to receive print assignments. A.
Applicable to your case:. Why not let your Java application connect directly to the server? You can use HTTP, SOAP, or even JMS on top of RMI. Then you can run the hardware command from the server (and not from a limited JavaScript browser environment). Thus, you get many functions: authentication, command buffering, as well as the ability to share equipment between multiple clients.
Scheme:
<----AJAX------> Web browser ApplicationServer <---HTTP/SOAP--> Java hardware manager application
You can launch a Java application using Java Web Start, which allows you to automatically update the application (instead of passing a new installer to each client).
source share