XML外部实体引用限制不当问题
温馨提示:
本文最后更新于 2024年04月12日,已超过 37 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
我在使用 unmarshal 解析 XML 时遇到了这个问题。错误消息”该方法使用 unmarshal 加载和解析 XML。此 XML 是在用户输入 FileReader 接收之前的。请注意,unmarshal 设置为自动加载并替换 XML 中的任何 DTD实体引用,包括对外部文件的引用。
我的代码是
protected static XXType readXXfromFile(String filename) {
SAXParserFactory spf = SAXParserFactory.newInstnace();
spf.setFeature(, true);
spf.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
spf.setXIncludeAware(false);
InputSource source = new InputSource(new FileReader(filename));
Source xmlSource = new SAXSource(spf.newSAXParser().getXMLReader(), source);
JAXBContext jaxbContext = JAXBContext.newInstance(XXType.class);
Unmarshaller marshaller = jaxbContext.createUnmarshaller();
return marshaller.unmarshal(xmlSource, XXType.class).getValue();
}
也许代码完成了它的工作,但它引发了上述漏洞问题。我错过了什么吗?
请指导。
谢谢。
正文到此结束
- 本文标签: 家庭宠物
- 本文链接: https://www.coder6.net/article/2346
- 版权声明: 本文由蚂蚁原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权