2011-11-03 148 views
0

我想知道是否有人能告诉我能够为我的Java小程序创建读取文件权限的方式。Java读取文件权限

我收到确切的例外是

java.security.AccessControlException: access denied(java.io.FilePermission filename.pdf write) 

我已经把f.setReadablef.setWriteable其中f是文件并没有什么。请稍微帮忙。

+0

哎呀,我的意思是说写权限,但我不知道为什么我需要写时,我正在做的是读PDF和打印它。 – user1022570

+0

你试过f.setReadable(true)和f.setWriteable(true)吗? – orangegoat

+0

是的,对不起,我对这两种方法都是正确的。不行。我想这是最简单的方法来设置权限 – user1022570

回答

2

未签名的小程序可以执行的操作有安全限制,它不能执行的操作之一是访问本地文件系统(请参阅here获取完整列表)。你有几种选择:

  1. Sign your applet。如果用户运行applet,它将不会运行任何安全限制。但是,使用可信证书签署您的小程序每年至少需要100美元,如果您自签名,那么没有人会信任您的小程序。即使您使用可信证书签名,用户也可能决定不运行它。
  2. a JNLP file设置您的小程序。这会让你的applet使用javax.jnlp包。然后,您可以使用FileOpenServiceFileSaveService来要求用户让您读/写一个特定的文件。或者,您可以使用PersistenceService在浏览器中永久存储少量数据。
+0

对于JNLP而言,使用上述服务对本地文件访问更容易,但整个部署也更容易(库,JVM版本,HTML代码)。 –