java - 通过JNLP写入本地文件

标签 java security file-io jnlp java-web-start

我有一个特定的要求,即从 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/

相关文章:

java - 正则表达式从 html 标签(嵌套)获取文本 - Java

php - 无法从 Symfony 2 上的 In Memory 登录注销

javascript - firefox 从本地 JS 文件读取网页——访问受限 URI 被拒绝,代码 : 1012, nsresult: NS_ERROR_DOM_BAD_URI

c# - 我可以将 FileStream 作为文件的通用接口(interface)返回吗?

python - 如果同时读取和追加同一个文件(python 编程),会发生什么情况?

c# - FileInfo.MoveTo() 与 File.Move()

java - Powershell 脚本无法在 Java 代码中运行

java - 使用java中的标准键初始化非静态 HashMap

java - Firebase - 按值检索数据到外部变量

python - 这个安全需求怎么设计?