Ищете подтверждение того, что нижеследующее является наиболее эффективным решением Java для проверки XML-строки в отношении схемы. Любые другие способы, которые являются более эффективной памятью или эффективностью?Подтверждение XML против XSD
private boolean isXMLValid(String XSDPath, String XML) {
final SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
try {
final Schema schema = factory.newSchema(new File(XSDPath));
final Validator validator = schema.newValidator();
validator.validate(new StreamSource(new ByteArrayInputStream(XML.getBytes())));
} catch (IOException | SAXException e) {
System.out.println("Exception: " + e.getMessage());
return false;
}
return true;
}
только в каком-то контексте эта проверка сидит за REST API, который будет вызываться другим приложением для проверки их XML, поэтому я не уверен, могу ли я получить более потоковое, но дайте мне знать, если у вас есть какие-либо идеи. Благодаря! – c12
'ServletRequest' имеет метод' 'getInputStream' '(http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html#getInputStream()). – lexicore