2010-04-12 76 views

回答

1

要清除一个误解:JSP是在服务器机器运行在服务器端视图技术,产生了一堆的HTML/CSS的/ JS基于模板内容和任何taglibs和EL,并通过网络将其作为一个大字符串发送到客户端。运行在客户端的浏览器将相应地解释/应用/执行HTML/CSS/JS。在浏览器中单击右键并选择查看源代码。如果JSP已经很好地完成了它的任务,你就不应该看到任何一行Java/JSP/EL代码。

实现这个特殊的功能性需求的唯一方法是让JSP页面成为了一个嵌入式(并签字!)appletwebstart应用程序,它是由客户端机器上下载(自动),并反过来做类似:

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

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

0

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

不,从设计上来说,没有可靠的方式从浏览器在客户机上启动应用程序。考虑到这会造成巨大的安全风险。

有一些IE特定的启动程序的方式,但它从来不是一个好主意。我相信,在IE浏览器的默认安全设置将防止这种反正工作: http://www.tutorial5.com/content/view/51/45/

相关问题