I want to validate an XML file like this, which should be the correct way:
File schemaFile = new File("src/main/res/kml21.xsd"); // etc.
Source xmlFileToValidate = new StreamSource(new File(uri.getPath()));
SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = schemaFactory.newSchema(schemaFile);
Validator validator = schema.newValidator();
validator.validate(xmlFileToValidate);
But I just get this error:
2022-05-30 09:35:04.390 18383-18383/com.example.axistracker E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.axistracker, PID: 18383
java.lang.IllegalArgumentException: http://www.w3.org/2001/XMLSchema
at javax.xml.validation.SchemaFactory.newInstance(SchemaFactory.java:192)
at com.example.axistracker.backend.geo.parse.KMLParser.isKMLValid(KMLParser.java:53)
Any idea why I get the "IllegalArgumentException: http://www.w3.org/2001/XMLSchema"?