This is an automated email from the ASF dual-hosted git repository. michaelo pushed a commit to branch DOXIA-716 in repository https://gitbox.apache.org/repos/asf/maven-doxia.git
commit ce01ba043e784e1293805782ca258e40aba8c218 Author: Michael Osipov <micha...@apache.org> AuthorDate: Sat Dec 30 13:45:36 2023 +0100 Reuse XmlValidator --- .../maven/doxia/xsd/AbstractXmlValidator.java | 23 ++++++---------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/xsd/AbstractXmlValidator.java b/doxia-core/src/test/java/org/apache/maven/doxia/xsd/AbstractXmlValidator.java index 05e82f04..4da6182b 100644 --- a/doxia-core/src/test/java/org/apache/maven/doxia/xsd/AbstractXmlValidator.java +++ b/doxia-core/src/test/java/org/apache/maven/doxia/xsd/AbstractXmlValidator.java @@ -19,17 +19,15 @@ package org.apache.maven.doxia.xsd; import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; import java.io.IOException; import java.io.StringReader; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.Locale; import java.util.Map; +import org.apache.maven.doxia.util.XmlValidator; import org.codehaus.plexus.testing.PlexusTest; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; @@ -161,20 +159,11 @@ public abstract class AbstractXmlValidator { private XMLReader getXMLReader() { if (xmlReader == null) { try { - SAXParserFactory parserFactory = SAXParserFactory.newInstance(); - parserFactory.setNamespaceAware(true); - SAXParser parser = parserFactory.newSAXParser(); - // If both DTD and XSD are provided, force XSD - parser.setProperty( - "http://java.sun.com/xml/jaxp/properties/schemaLanguage", "http://www.w3.org/2001/XMLSchema"); - // Always force language-neutral exception messages for MessagesErrorHandler - parser.setProperty("http://apache.org/xml/properties/locale", Locale.ROOT); - xmlReader = parser.getXMLReader(); - xmlReader.setFeature("http://xml.org/sax/features/validation", validate); - xmlReader.setFeature("http://apache.org/xml/features/validation/dynamic", validate); - xmlReader.setFeature("http://apache.org/xml/features/validation/schema", validate); - xmlReader.setErrorHandler(new MessagesErrorHandler()); - xmlReader.setEntityResolver(getEntityResolver()); + XmlValidator validator = new XmlValidator(); + validator.setValidate(validate); + validator.setDefaultHandler(new MessagesErrorHandler()); + validator.setEntityResolver(getEntityResolver()); + xmlReader = validator.getXmlReader(); } catch (SAXNotRecognizedException e) { fail("SAXNotRecognizedException: " + e.getMessage()); } catch (SAXNotSupportedException e) {