MCPcopy Create free account
hub / github.com/apache/tomcat / getXMLReader

Method getXMLReader

java/org/apache/tomcat/util/digester/Digester.java:962–988  ·  view source on GitHub ↗

Return the XMLReader to be used for parsing the input document. FIX ME: there is a bug in JAXP/XERCES that prevent the use of a parser that contains a schema with a DTD. @return the XML reader @exception SAXException if no XMLReader can be instantiated

()

Source from the content-addressed store, hash-verified

960 * @exception SAXException if no XMLReader can be instantiated
961 */
962 public XMLReader getXMLReader() throws SAXException {
963 if (reader == null) {
964 reader = getParser().getXMLReader();
965 }
966
967 reader.setDTDHandler(this);
968 reader.setContentHandler(this);
969
970 EntityResolver entityResolver = getEntityResolver();
971 if (entityResolver == null) {
972 entityResolver = this;
973 }
974
975 // Wrap the resolver so we can perform ${...} property replacement
976 if (entityResolver instanceof EntityResolver2) {
977 entityResolver = new EntityResolver2Wrapper((EntityResolver2) entityResolver, source, classLoader);
978 } else {
979 entityResolver = new EntityResolverWrapper(entityResolver, source, classLoader);
980 }
981
982 reader.setEntityResolver(entityResolver);
983
984 reader.setProperty("http://xml.org/sax/properties/lexical-handler", this);
985
986 reader.setErrorHandler(this);
987 return reader;
988 }
989
990 // ------------------------------------------------- ContentHandler Methods
991

Callers 5

parseMethod · 0.95
testDirectoryListingMethod · 0.80
validateXmlMethod · 0.80
testListenerMethod · 0.80
getSAXParserMethod · 0.80

Calls 5

getParserMethod · 0.95
getEntityResolverMethod · 0.95
setEntityResolverMethod · 0.80
setPropertyMethod · 0.45
setErrorHandlerMethod · 0.45

Tested by 3

testDirectoryListingMethod · 0.64
validateXmlMethod · 0.64
testListenerMethod · 0.64