Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从web浏览器执行应用程序?_Java_Javascript_Jsp - Fatal编程技术网

Java 从web浏览器执行应用程序?

Java 从web浏览器执行应用程序?,java,javascript,jsp,Java,Javascript,Jsp,如何从浏览器执行桌面应用程序?。我有一个带有按钮的网页,当用户单击此按钮时,一个简单的java桌面应用程序必须运行。如何使用jsp或javascript实现这一点?您应该看看。这将是最接近的事情:可能是您的解决方案 要启动JavaWebStart应用程序,只需将浏览器指向JNLP文件的位置。基本上,浏览器检测到的不是简单地下载文件,而是在Web Start中运行文件 大多数主流浏览器都支持JavaWebStart。JavaWebStart是跨平台的(适用于Mac和PC) 因此,在Javascri

如何从浏览器执行桌面应用程序?。我有一个带有按钮的网页,当用户单击此按钮时,一个简单的java桌面应用程序必须运行。如何使用jsp或javascript实现这一点?

您应该看看。这将是最接近的事情:

可能是您的解决方案

要启动JavaWebStart应用程序,只需将浏览器指向JNLP文件的位置。基本上,浏览器检测到的不是简单地下载文件,而是在Web Start中运行文件

大多数主流浏览器都支持JavaWebStart。JavaWebStart是跨平台的(适用于Mac和PC)

因此,在Javascript中,它是这样做的:

window.location = "http://www.examples.com/myapp.jnlp";

您还需要对Java应用程序进行签名,否则用户将收到严重警告。

通过小程序进行管理是另一种选择。尽管基础方案相同,但用户需要接受生成的证书。

如果不随页面发送ActiveX控件或其他内容,则无法执行此操作。仅仅使用Javascript是不可能的。当然,ActiveX控件对于您的Mac用户或从未安装ActiveX控件的用户来说是非常无用的。如果您找到一种方法,一定要让世界上的病毒编写者知道,这听起来比他们现在拥有的更容易部署。@t loach-安全地运行下载的Java应用程序是完全可能的,默认情况下,JavaWebStart运行在一个安全的沙箱中,因此它对病毒编写者没有多大用处。当然,如果您需要增强的权限(如完全文件系统访问权限),风险会更大……:-)我将介绍第二个Java Web Start,它在我的项目中运行良好,唯一的限制是用户必须安装相对较新的浏览器/Java版本,但我的经验是,现在大多数人都安装了该版本。然而,这不是您所期望的桌面程序(安装在本地PC上)。这是安装在服务器上的Java软件包。请参见示例。例如,我们将ScrumWorks用作web服务的桌面应用程序。@extraneon,它不需要安装向导来安装,但它确实是一个桌面应用程序。一旦用户授予它权限,它将在用户的桌面上运行,并具有对系统的完全访问权限。它不需要应用服务器。web浏览器会缓存应用程序,因此只有当您将较新的文件放到服务器上时,才会再次下载该应用程序。用户还可以在桌面上安装快捷方式,从那里启动。如何执行此操作的具体步骤因操作系统/浏览器而异。作为更新,不再可能通过web浏览器在Mac上部署。在默认Mac OS X 10.8安装上,您不能再通过web浏览器(web Start)启动Java应用程序。现在,Java应用程序必须捆绑成应用程序,嵌入Java运行时库的完整副本,并进行签名。