2011-11-01 58 views
0

我正在通过我的java程序执行bat文件。该路径在java中被硬编码。小程序执行无法执行批处理文件打包在可执行文件里面

我在jar.and中包含bat文件,并且jar包含主类作为applet类。

我从jsp页面调用这个jar文件作为applet。

小程序运行成功,但无法在init中运行bat文件。

如果我给硬编码路径,然后它执行...但不能执行采取从罐子。

包装这种jar的任何提示,例如里面有bat文件并且能够将其作为动态applet运行?

回答

1

你正在努力使这里有两个不可能的事情:

  • 从applet执行批处理文件。这需要一个签名的applet和用户授予的权限,因为很显然,从web上下载的applet启动一个外部程序是非常非常不安全的。
  • 执行不在文件系统上的批处理文件。 cmd.exe需要执行批处理文件的文件系统路径。它将无法在仅存在于浏览器内存中的jar中查找批处理文件。您需要将批处理文件写入文件系统(这又一次需要签名的小程序并授予权限,因为让本地硬盘上的小程序写入非常不安全),然后执行此批处理文件。

Applets在安全沙箱中运行。你需要了解它。阅读http://download.oracle.com/javase/tutorial/deployment/applet/security.html