我尝试从本地XML文件创建文档对象。
这部分代码:
DocumentBuilderFactory factoria = DocumentBuilderFactory.newInstance();
DocumentBuilder constructor = factoria.newDocumentBuilder();
Document documento = constructor.parse(ClassLoader.getSystemResourceAsStream(URLXML));
导致以下异常:
线程中的异常" AWT-EventQueue-0" java.lang.IllegalArgumentException:InputStream不能为null javax.xml.parsers.DocumentBuilder.parse(未知来源)
getSystemResourceAsStream()只有在无法找到源时才会返回null,并且我已经检查过文件url是否正确存储在字符串中(它的C:\文件\ n) .xml,这是文件的正确位置。)
那么失败了什么?我做错了什么?
答案 0 :(得分:0)
将file.xml保留在classpath中。如果您的Web应用程序是Web应用程序,请将其保存在WEB-INF中,或将其保存在执行独立应用程序的java命令的文件夹中。
答案 1 :(得分:-1)
我使用getSystemResourceAsStream
遇到了同样的错误,所以不使用我使用过的:
parser.parse(new File(""), handler);
它工作正常。