我有一个特定的要求,即从 jar 文件中读取资源,然后将其写入本地磁盘。但是当我尝试将该资源写入本地磁盘时出现异常:
java.io.FilePermission (write) is raised.
我已经为我的 jar 签名了。我也尝试了以下解决方案,但它也不起作用。
AccessController.doPrivileged(new PrivilegedAction()
似乎没有任何效果。
我是否在签署 jar 后遗漏了一个步骤,因为这是随处可用的最常见的解决方案?
如何在不使用策略文件的情况下写入本地文件(因为这不能在每台客户端计算机上完成)?
最佳答案
您可以通过用户交互从未签名的 WebStart 应用程序使用 javax.jnlp.FileSaveService
保存文件.
您可能遗漏的部分是在 JNLP 文件中将应用程序标记为安全。但是,编写安全的应用程序有点棘手,我不推荐这样做。
关于java - 通过JNLP写入本地文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11023018/