如何防止XML解析错误被写入System.err(stderr)?
2022-09-02 03:46:16
我正在编写一些单元测试,这些测试故意将错误的字符串传递给Java DOM XML解析器。
例如:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
String message_xml = ""; // Empty string, not valid XML!!!
ByteArrayInputStream input = new ByteArrayInputStream(message_xml.getBytes());
Document doc = db.parse(input);
这是正确地抛出一个SAXParseException(这是我的单元测试所期望的)。但它也在Java控制台中向System.err(stderr)写入一条消息:
[Fatal Error] :1:1: Premature end of file.
有没有办法将 XML 解析器配置为不写入 stderr?
我使用的是Java 1.6SE。