Class XMLReaderFactory
- java.lang.Object
-
- org.xml.sax.helpers.XMLReaderFactory
@Deprecated(since="9") public final class XMLReaderFactory extends Object
SAXParserFactory
instead.Factory for creating an XML reader.
This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.
This class contains static methods for creating an XML reader from an explicit class name, or based on runtime defaults:
try { XMLReader myReader = XMLReaderFactory.createXMLReader(); } catch (SAXException e) { System.err.println(e.getMessage()); }
Note to Distributions bundled with parsers: You should modify the implementation of the no-arguments createXMLReader to handle cases where the external configuration mechanisms aren't set up. That method should do its best to return a parser when one is in the class path, even when nothing bound its class name to org.xml.sax.driver
so those configuration mechanisms would see it.
- Since:
- 1.4, SAX 2.0
Method Summary
Modifier and Type | Method | Description |
---|---|---|
static XMLReader | createXMLReader() | Deprecated. Obtains a new instance of a |
static XMLReader | createXMLReader(String className) | Deprecated. Attempt to create an XML reader from a class name. |
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Method Detail
createXMLReader
public static XMLReader createXMLReader() throws SAXException
XMLReader
. This method uses the following ordered lookup procedure to find and load the XMLReader
implementation class: - If the system property
org.xml.sax.driver
has a value, that is used as an XMLReader class name. - Use the service-provider loading facility, defined by the
ServiceLoader
class, to attempt to locate and load an implementation of the serviceXMLReader
by using the current thread's context class loader. If the context class loader is null, the system class loader will be used. - Deprecated. Look for a class name in the
META-INF/services/org.xml.sax.driver
file in a jar file available to the runtime. -
Otherwise, the system-default implementation is returned.
- API Note:
- The process that looks for a class name in the
META-INF/services/org.xml.sax.driver
file in a jar file does not conform to the specification of the service-provider loading facility as defined inServiceLoader
and therefore does not support modularization. It is deprecated as of Java SE 9 and subject to removal in a future release. - Returns:
- a new XMLReader.
- Throws:
-
SAXException
- If no default XMLReader class can be identified and instantiated. - See Also:
createXMLReader(java.lang.String)
createXMLReader
public static XMLReader createXMLReader(String className) throws SAXException
Attempt to create an XML reader from a class name.
Given a class name, this method attempts to load and instantiate the class as an XML reader.
Note that this method will not be usable in environments where the caller (perhaps an applet) is not permitted to load classes dynamically.
- Returns:
- A new XML reader.
- Throws:
-
SAXException
- If the class cannot be loaded, instantiated, and cast to XMLReader. - See Also:
createXMLReader()