Tôi có một mã tiêu chuẩn như dưới đây để xác nhận xml dựa vào xsd, nhưng nó ném ngoại lệ vào lỗi đầu tiên và dừng lại. Làm thế nào để xác nhận xml, nhưng tiếp tục trên các lỗi đầu tiên và tiếp theo và nhận được tất cả ở cuối? Thậm chí có thể không?Làm cách nào để xác thực xml dựa trên xsd và nhận các lỗi * ALL *?
public static void validate(File xml, InputStream xsd) {
try {
SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = factory.newSchema(new StreamSource(xsd));
Validator validator = schema.newValidator();
StreamSource xmlFile = new StreamSource(xml);
validator.validate(xmlFile);
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
Ví dụ này có thể hữu ích: http://java-by-ash.blogspot.com/2012/07/xml-schema-validation.html – ThreaT