JavaScript-Java Bridge
A replacement for the Java Plugin so Java Applets without graphics continue to work on browsers that no longer support NPAPI plugins. Java's LiveConnect API is emulated — data & method calls can be exchanged, and Java can manipulate the webpage DOM.
What is JavaScript-Java Bridge?
Stats
Chrome-Stats Rank
Other platforms
Summary
A web browser is a good user interface for a native application. The Java browser Plugin provided an easy way for Java programs, configured as Applets, to manipulate webpages, and for the webpages to both get and set Java fields and call Java methods via the LiveConnect API. This was in addition to the ability of Applets to display their graphics in a rectangle on their webpages.
However both the Java Plugin and Applets are now being deprecated as security and browser-stability risks. Continued use of them requires use of an older browser version, and soon an older Java version.
This Firefox extension and Java library allows Applets which display no graphics but only interact with JavaScript and the DOM to continue to be used on current browser and Java versions with minor changes on both the Java and JavaScript sides. Display of Applet graphics may be supported in the future.
The alternative to using this extension to turn a browser into a Java user interface would be to write the Java Program as a backend API, and have the browser frontend interact with this via Ajax/XMLHttpRequest calls, perhaps under a framework such as React. This does have the advantage of weak coupling, allowing the backend and frontend to be separately developed, and simultaneously accessed from multiple browsers. But, besides the obvious advantage for UIs already written as Applets, the remote procedure call and remote DOM manipulation paradigm of JSJBridge/LiveConnect, and the automatic start-stop synchronisation of the front and back ends, can continue to make this an easy, efficient, fast, and powerful solution.
Licence
This extension and its associated Java library are licensed under Version 1 of the DevWheels Licence. Read the licence for the precise conditions, but a simple summary would be:
- You can use this package without payment for evaluation, internal testing, and development work on your application or fork.
- However you must pay me AUD $20 for each browser on which this is installed and otherwise run.
- The cost of an update is the difference between the costs of the versions you are upgrading between.
- You can release your own modified or unmodified version, and charge what you like, as long as you keep the same licence, which means complying with point 2 and forwarding AUD $20 to me for each production installation.
User reviews
Safety
Risk impact
JavaScript-Java Bridge may not be safe to use and it requires some risky permissions. Exercise caution when installing this add-on. Review carefully before installing.
Risk likelihood
JavaScript-Java Bridge has earned a fairly good reputation and likely can be trusted.