我可以在JSP中调用本地用户程序吗?

时间:2010-04-12 17:19:31

标签: java jsp

有没有办法在JSP中调用本地程序?

例如,要向jsp页面添加按钮,当用户按下按钮时,将打开Windows计算器应用程序。

由于

2 个答案:

答案 0 :(得分:1)

清除误解:JSP是一种服务器端视图技术,它在服务器机器上运行,根据模板内容和任何taglib和EL产生一堆HTML / CSS / JS并发送它作为一个通过网络到客户端的大字符串。在客户端运行的webbrowser将依次解释/应用/执行HTML / CSS / JS。右键单击webbrowser中的页面,然后选择查看源。如果JSP完成了它的任务,你就不应该看到任何Java / JSP / EL代码。

实现此特定功能要求的唯一方法是让JSP页面提供嵌入式(和签名!)appletwebstart应用程序,该应用程序将由客户端(自动)下载机器反过来做了类似的事情:

Runtime.getRuntime().exec("calc.exe");

您只需要意识到这将成为特定于平台的,因此不适用于运行Mac或Linux的网页访问者。您需要根据System.getProperty("os.name")等添加一些额外的检查,或者忘记这个想法并查看解决方案的不同角落。

答案 1 :(得分:0)

如果你想在客户端的机器上启动程序,你会看到JavaScript或其他一些客户端脚本,而不是服务器端的JSP。

不,没有可靠的方法可以通过设计从浏览器在客户端计算机上启动应用程序。允许这样做会带来巨大的安全风险。

有一些IE特定的启动程序的方法,但它永远不是一个好主意。我相信IE中的默认安全设置会阻止此操作: http://www.tutorial5.com/content/view/51/45/