权限在jnlp中被拒绝尝试调用showDocument与pdf文件
问题描述:
我需要一些帮助,在我的jnlp应用程序showDocument。 我试图在浏览器的另一个选项卡中显示一个pdf文件,但是java插件被拒绝。权限在jnlp中被拒绝尝试调用showDocument与pdf文件
我的JNLP文件具有
<security>
<all-permissions/>
</security>
,我的代码是:
AccessController.doPrivileged(new PrivilegedAction()
{
@Override
public Object run()
{
try
{
applet.getAppletContext().showDocument(new URL("file:///C:/Contrato.PDF"), "_blank");
}
catch(Exception e)
{
e.printStackTrace();
showException("Erro ao exibir arquivo:" + e.getMessage());
}
return null;
}
});
,但我收到异常
java.lang.SecurityException: showDocument url permission denied
如果我尝试做showDocument(google.com ,_blank)...,但当我尝试显示任何文件时,它不起作用。
答
showDocument(URL)
方法AppletContext
从未打算从本地文件系统启动文件(即使指定为file
协议URL)。
至少有两个选择:
- 的JNLP片段表明,这是一个值得信赖的应用程序,所以对于一个1.6+应用程序,
Desktop.browse(URI)
可以调用。 - JNLP API的
BasicService
提供了showDocument(URL)
方法。
+0
桌面类解决了问题。 Ty – 2012-04-04 20:45:18
+0
不客气。发布代码以清除问题+1。 – 2012-04-05 01:20:15
'showDocument(new URL(“file:/// C:/Contrato.PDF”),“_blank”);' - 'showDocument' was * not * designed for shown off off off off the computer of end用户!该PDF是在客户端还是服务器上? – 2011-12-24 20:09:57
在客户端 – 2012-01-04 22:09:55