用于启动Java应用程序的Netscape插件的替代方案

用于启动Java应用程序的Netscape插件的替代方案,java,javascript,plugins,activex,netscape,Java,Javascript,Plugins,Activex,Netscape,我正试图想出一个变通办法,以适应今年晚些时候Chrome(和Firefox)放弃对Netscape插件的支持。以下是目前的情况,适用于所有浏览器: 服务器:有CGI、HTML等,页面上有“启动”按钮 桌面:有Java程序(不是小程序)由一堆JAR组成,目标是在按下HTML按钮后启动JAR。桌面客户端计算机上还有一个私有JRE和一个Netscape插件,位于每个浏览器的插件文件夹中(另外,为了适应较新的IE,还有一个pluginhostctrl.dll activex容器,允许NP插件运行)。因此

我正试图想出一个变通办法,以适应今年晚些时候Chrome(和Firefox)放弃对Netscape插件的支持。以下是目前的情况,适用于所有浏览器:

服务器:有CGI、HTML等,页面上有“启动”按钮

桌面:有Java程序(不是小程序)由一堆JAR组成,目标是在按下HTML按钮后启动JAR。桌面客户端计算机上还有一个私有JRE和一个Netscape插件,位于每个浏览器的插件文件夹中(另外,为了适应较新的IE,还有一个pluginhostctrl.dll activex容器,允许NP插件运行)。因此,当按下启动按钮时,一些javascript调用插件对象,在客户端上,NP dll调用WinExec来运行一个小的Win32可执行文件,该文件使用适当的参数调用私有Java运行时来运行我的Java应用程序。一个冗长的方法,但它的工作。私有JRE是至关重要的——我们只想针对我们测试过的JRE运行java应用程序,也不想强制安装系统JRE

所以---当NP插件消失时,我需要找到另一种方法来针对我的JRE启动java应用程序。这排除了任何使用系统JRE的JNLP或JavaWebStart解决方案(如果有的话)

到目前为止,我唯一能想到的是让启动按钮调用某种Javascript,它以某种方式在客户端上发出事件信号,后台应用程序或服务会拾取该事件并启动私有JRE/Java应用程序。但我找不到任何方式将事件传递到浏览器外部,例如文件写入、剪贴板写入

值得探索node.js吗

还有其他不涉及对传统java应用程序进行更改的解决方案吗


谢谢

Node.js在这里对您没有任何好处。另外,如果您的方法涉及Win32可执行文件,那么它在“所有浏览器”上都不起作用。您可能只需要一些特定的浏览器(即Firefox ESR?),为了澄清这一点,它在Windows上的所有浏览器(32位和64位)上都可以工作:IE 5+,以及FF、Chrome、Safari和Opera的所有版本。显然不是Mac/Linux的解决方案,但这不是市场需求。