我想使用JAXB unmashall一些XML,我首先使用xjc创建。我不想对解组进行任何验证,但即使我已根据与u.setSchema(null);
的JAXB文档禁用了验证,但这并未阻止FileNotFoundException
在尝试运行时发生,并且无法找到架构。如何使用JAXB2.0禁用DTD提取
JAXBContext jc = JAXBContext.newInstance("blast");
Unmarshaller u = jc.createUnmarshaller();
u.setSchema(null);
return u.unmarshal(blast)
我已经看到了致残SAX由Apache属性设置http://apache.org/xml/features/validation/schema
到false
从验证分析类似的问题,但我不能让着Unmarshaller用自己的SAX解析器。
,对我没有工作,但这些丝毫:parser.setFeature(“HTTP: //apache.org/xml/features/nonvalidating/load-external-dtd“,false); parser.setFeature(“http://xml.org/sax/features/validation”,false); – aerobiotic 2012-05-25 22:13:40
有氧生物是正确的 – sura2k 2014-06-17 08:08:12
[This](https://www.owasp.org/index.php/XML_External_Entity_(XXE)_Prevention_Cheat_Sheet#SAXTransformerFactory)网站解释了它如何在任何主要的Java框架上被阻塞。 – 2016-08-10 20:50:34