首页 开发者工具 JavaScript-Java Bridge

JavaScript-Java Bridge

用户数 : 10000 分类 : 开发者工具 扩展大小 : 20.44KiB 最后更新时间 : 2020-06-17 版本 : 1.7
prev extension banner next extension banner
                            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 (https://www.oracle.com/technetwork/java/javase/overview/liveconnect-docs-349790.html). 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 extension and associated 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 (https://devwheels.com). Read the licence for the precise conditions, but a simple summary would be:

1. You can use this package without payment for evaluation, internal testing, and development work on your application or fork.

2. However you must pay me AUD $20 for each browser on which this is installed and otherwise run.

3. The cost of an update is the difference between the costs of the versions you are upgrading between.

4. 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.

The advantage of this licence is that it both retains the enhanced debugging, customisation, risk-mitigation, and community development of Free/Open Source software (its most important features IMHO), while making it practical for developers to earn a living directly from their software (or their documentation writing, or their marketing nous).

If you have an idea for, or an implementation of, enhancements, I encourage you see whether they can be incorporated into my extension rather than publishing your own fork. We may be able to come to an agreement for a revenue share, and reduce the number of similar extensions.

The JSJBridge source code: https://github.com/mrj/jsjbridge
  
Migrating from Applets and the Java Plugin to WebpageHelpers and JSJBridge: https://github.com/mrj/jsjbridge/blob/master/MigrationInstructions.md
                        
查看更多
下载 如何离线安装? Chrome store

分享

全部评论

    展开更多评论

    错误提示保存失败
    成功提示保存成功
    close
    qr-code

    为打击盗链困扰,本站已启用公众号验证
    微信扫码关注上方公众号,回复“插件”二字获得验证码,验证码5分钟内全站有效。

    正在验证
    验证成功
    下载遇到问题?请添加QQ群:398095333
    close
    qr-code

    为打击盗链困扰,本站已启用公众号验证
    微信扫码关注上方公众号,回复“脚本”二字获得验证码,验证码5分钟内全站有效。

    正在验证
    验证成功