xml解析在不连接网络的情况下报错
错误包含以下字符:java.net.UnknownHostException
错误来源之一:org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity
使用类似以下代码,避免外部连接dtd校验:
//获取SAX工厂对象
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setNamespaceAware(false);
factory.setValidating(false);
//获取SAX解析
SAXParser parser = (SAXParser)factory.newSAXParser();
System.out.println(parser);
System.out.println(parser.getXMLReader());
parser.getXMLReader().setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd",false);
BeanReader xmlReader = new BeanReader(parser);
这里,打印出来的parser是org.apache.xerces.jaxp.SAXParserImp,打印出来的XMLReader是org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser
错误包含以下字符:java.net.UnknownHostException
错误来源之一:org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity
使用类似以下代码,避免外部连接dtd校验:
//获取SAX工厂对象
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setNamespaceAware(false);
factory.setValidating(false);
//获取SAX解析
SAXParser parser = (SAXParser)factory.newSAXParser();
System.out.println(parser);
System.out.println(parser.getXMLReader());
parser.getXMLReader().setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd",false);
BeanReader xmlReader = new BeanReader(parser);
这里,打印出来的parser是org.apache.xerces.jaxp.SAXParserImp,打印出来的XMLReader是org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser