使用JAVA DOM解析XML文件时的AccessControlException

时间:2012-08-23 17:25:39

标签: java xml exception dom accesscontrolexception

好的,我正在使用JAVA DOM解析XML文件。 每当程序到达应该解析XML文件的位置时,我得到一个“AccessControlException”,说“访问被拒绝”。 我使用JAVA DOM解析了许多XML文件,这是我第一次遇到这个异常。 我做错了什么?

这是XML文件:

<?xml version="1.0" encoding="UTF-8" ?>
<root>

</root>

以下是应该解析它的代码:

DocumentBuilderFactory bdf = DocumentBuilderFactory.newInstance();
        DocumentBuilder bd = bdf.newDocumentBuilder();
        Document doc = bd.parse("excersize.xml");

最后这是我得到的错误:

java.security.AccessControlException: access denied ("java.io.FilePermiss
ion" "\excersize.xml" "read")

修改

幸运的是,经过一段时间后,我使用策略文件使其工作,但无论出于何种原因,只有在键入xml文件的完整目录时它才有效

有效

Document doc = builder.parse("file:/B:/Programming/Java/Programs/new/excersize.xml");

Document doc = builder.parse("excersize.xml"); //The xml file is in the same directory as the java source file, the class file, and the html file

虽然这是可以容忍的,但我确实希望保持我的文件“移动就绪”,这样他们就没有任何具体的地址,而是相对于.java和.class文件的地址。任何帮助我找出这个问题的帮助将不胜感激:)

1 个答案:

答案 0 :(得分:2)

异常说明了一切,您正在尝试访问JVM无法访问的文件。 也许你可以看一下documentation

修改

默认情况下,applet无法访问客户端的文件I / O. 您需要在applet上签名或edit the policy files to allow it