javax.xml.parsers
Class SAXParserFactoryjava.lang.Object | +--javax.xml.parsers.SAXParserFactory
- public abstract class SAXParserFactory
- extends Object
Defines a factory API that enables applications to configure and obtain a SAX based parser to parse XML documents.
An implementation of the SAXParserFactory class is NOT guaranteed to be thread safe. It is up to the user application to make sure about the use of the SAXParserFactory from more than one thread. Alternatively the application can have one instance of the SAXParserFactory per thread. An application can use the same instance of the factory to obtain one or more instances of the SAXParser provided the instance of the factory isn't being used in more than one thread at a time.
The static newInstance method returns a new concrete implementation of this class.
- Since:
- JAXP 1.0
Constructor Summary
protected SAXParserFactory()
Method Summary
abstract boolean getFeature(String name)
Returns the particular property requested for in the underlying implementation of org.xml.sax.XMLReader.boolean isNamespaceAware()
Indicates whether or not the factory is configured to produce parsers which are namespace aware.boolean isValidating()
Indicates whether or not the factory is configured to produce parsers which validate the XML content during parse.static SAXParserFactory newInstance()
Obtain a new instance of a SAXParserFactory.abstract SAXParser newSAXParser()
Creates a new instance of a SAXParser using the currently configured factory parameters.abstract void setFeature(String name, boolean value)
Sets the particular feature in the underlying implementation of org.xml.sax.XMLReader.void setNamespaceAware(boolean awareness)
Specifies that the parser produced by this code will provide support for XML namespaces.void setValidating(boolean validating)
Specifies that the parser produced by this code will validate documents as they are parsed.
Methods inherited from class java.lang.Object clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructor Detail
SAXParserFactory
protected SAXParserFactory()
Method Detail
newInstance
public static SAXParserFactory newInstance() throws FactoryConfigurationError
- Obtain a new instance of a SAXParserFactory. This static method creates a new factory instance This method uses the following ordered lookup procedure to determine the SAXParserFactory implementation class to load:
Once an application has obtained a reference to a SAXParserFactory it can use the factory to configure and obtain parser instances.
- Use the javax.xml.parsers.SAXParserFactory system property.
- Use the properties file "lib/jaxp.properties" in the JRE directory. This configuration file is in standard java.util.Properties format and contains the fully qualified name of the implementation class with the key being the system property defined above.
- Use the Services API (as detailed in the JAR specification), if available, to determine the classname. The Services API will look for a classname in the file META-INF/services/javax.xml.parsers.SAXParserFactory in jars available to the runtime.
- Platform default SAXParserFactory instance.
- Returns:
- A new instance of a SAXParserFactory.
- Throws:
- FactoryConfigurationError - if the implementation is not available or cannot be instantiated.
newSAXParser
public abstract SAXParser newSAXParser() throws ParserConfigurationException, SAXException
- Creates a new instance of a SAXParser using the currently configured factory parameters.
- Returns:
- A new instance of a SAXParser.
- Throws:
- ParserConfigurationException - if a parser cannot be created which satisfies the requested configuration.
- SAXException
setNamespaceAware
public void setNamespaceAware(boolean awareness)
- Specifies that the parser produced by this code will provide support for XML namespaces. By default the value of this is set to false.
- Parameters:
- awareness - true if the parser produced by this code will provide support for XML namespaces; false otherwise.
setValidating
public void setValidating(boolean validating)
- Specifies that the parser produced by this code will validate documents as they are parsed. By default the value of this is set to false.
- Parameters:
- validating - true if the parser produced by this code will validate documents as they are parsed; false otherwise.
isNamespaceAware
public boolean isNamespaceAware()
- Indicates whether or not the factory is configured to produce parsers which are namespace aware.
- Returns:
- true if the factory is configured to produce parsers which are namespace aware; false otherwise.
isValidating
public boolean isValidating()
- Indicates whether or not the factory is configured to produce parsers which validate the XML content during parse.
- Returns:
- true if the factory is configured to produce parsers which validate the XML content during parse; false otherwise.
setFeature
public abstract void setFeature(String name, boolean value) throws ParserConfigurationException, SAXNotRecognizedException, SAXNotSupportedException
- Sets the particular feature in the underlying implementation of org.xml.sax.XMLReader. A list of the core features and properties can be found at http://www.megginson.com/SAX/Java/features.html
- Parameters:
- name - The name of the feature to be set.
- value - The value of the feature to be set.
- Throws:
- SAXNotRecognizedException - When the underlying XMLReader does not recognize the property name.
- SAXNotSupportedException - When the underlying XMLReader recognizes the property name but doesn't support the property.
- ParserConfigurationException
- See Also:
- XMLReader.setFeature(java.lang.String, boolean)
getFeature
public abstract boolean getFeature(String name) throws ParserConfigurationException, SAXNotRecognizedException, SAXNotSupportedException
- Returns the particular property requested for in the underlying implementation of org.xml.sax.XMLReader.
- Parameters:
- name - The name of the property to be retrieved.
- Returns:
- Value of the requested property.
- Throws:
- SAXNotRecognizedException - When the underlying XMLReader does not recognize the property name.
- SAXNotSupportedException - When the underlying XMLReader recognizes the property name but doesn't support the property.
- ParserConfigurationException
- See Also:
- XMLReader.getProperty(java.lang.String)