好的,所以我正在使用 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 文件的地址。任何帮助我解决这个问题的帮助将不胜感激:)