Top Description Constructors Methods
javax.xml.parsers

public abstract Class SAXParser

extends Object
Class Inheritance
Known Direct Subclasses
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
Annotations
@SuppressWarnings:deprecation
Imports
java.io.File, .IOException, .InputStream, javax.xml.validation.Schema, org.xml.sax.HandlerBase, .InputSource, .Parser, .SAXException, .SAXNotRecognizedException, .SAXNotSupportedException, .XMLReader, org.xml.sax.helpers.DefaultHandler

Defines the API that wraps an org.xml.sax.XMLReader implementation class. In JAXP 1.0, this class wrapped the org.xml.sax.Parser interface, however this interface was replaced by the org.xml.sax.XMLReader. For ease of transition, this class continues to support the same name and interface as well as supporting new methods. An instance of this class can be obtained from the javax.xml.parsers.SAXParserFactory#newSAXParser() method. Once an instance of this class is obtained, XML can be parsed from a variety of input sources. These input sources are InputStreams, Files, URLs, and SAX InputSources.

This static method creates a new factory instance based on a system property setting or uses the platform default if no property has been defined.

The system property that controls which Factory implementation to create is named "javax.xml.parsers.SAXParserFactory". This property names a class that is a concrete subclass of this abstract class. If no property is defined, a platform default will be used.

As the content is parsed by the underlying parser, methods of the given org.xml.sax.HandlerBase or the org.xml.sax.helpers.DefaultHandler are called.

Implementors of this class which wrap an underlying implementation can consider using the org.xml.sax.helpers.ParserAdapter class to initially adapt their SAX1 implementation to work under this revised class.

Author
Jeff Suttor
Since
1.4

Constructor Summary

AccessConstructor and Description
protected
SAXParser()

Protected constructor to prevent instantiation.

Method Summary

Modifier and TypeMethod and Description
public abstract Parser

Returns:

The SAX parser that is encapsulated by the implementation of this class.
getParser
()

Deprecated as a consequence of Parser being deprecated.
Returns the SAX parser that is encapsulated by the implementation of this class.
public abstract Object

Returns:

Value of the requested property.
getProperty
(String
The name of the property to be retrieved.
name
)

Returns the particular property requested for in the underlying implementation of org.xml.sax.XMLReader.

public Schema

Returns:

Schema being used or null if none in use
getSchema
()

Get a reference to the Schema being used by the XML processor.

public abstract XMLReader

Returns:

The XMLReader that is encapsulated by the implementation of this class.
getXMLReader
()

Returns the org.xml.sax.XMLReader that is encapsulated by the implementation of this class.

public abstract boolean

Returns:

true if this parser is configured to understand namespaces; false otherwise.
isNamespaceAware
()

Indicates whether or not this parser is configured to understand namespaces.

public abstract boolean

Returns:

true if this parser is configured to validate XML documents; false otherwise.
isValidating
()

Indicates whether or not this parser is configured to validate XML documents.

public boolean

Returns:

the return value of the SAXParserFactory#isXIncludeAware() when this parser was created from factory.
isXIncludeAware
()

Get the XInclude processing mode for this parser.

public void
parse(InputStream
InputStream containing the content to be parsed.
is
,
HandlerBase
The SAX HandlerBase to use.
hb
)

Deprecated as a consequence of HandlerBase being deprecated.

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.HandlerBase.

public void
parse(InputStream
InputStream containing the content to be parsed.
is
,
HandlerBase
The SAX HandlerBase to use.
hb
,
String
The systemId which is needed for resolving relative URIs.
systemId
)

Deprecated as a consequence of HandlerBase being deprecated.

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.HandlerBase.

public void
parse(InputStream
InputStream containing the content to be parsed.
is
,
DefaultHandler
The SAX DefaultHandler to use.
dh
)

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.helpers.DefaultHandler.

public void
parse(InputStream
InputStream containing the content to be parsed.
is
,
DefaultHandler
The SAX DefaultHandler to use.
dh
,
String
The systemId which is needed for resolving relative URIs.
systemId
)

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.helpers.DefaultHandler.

public void
parse(String
The location of the content to be parsed.
uri
,
HandlerBase
The SAX HandlerBase to use.
hb
)

Deprecated as a consequence of HandlerBase being deprecated.
Parse the content described by the giving Uniform Resource Identifier (URI) as XML using the specified org.xml.sax.HandlerBase.
public void
parse(String
The location of the content to be parsed.
uri
,
DefaultHandler
The SAX DefaultHandler to use.
dh
)

Parse the content described by the giving Uniform Resource Identifier (URI) as XML using the specified org.xml.sax.helpers.DefaultHandler.

public void
parse(File
The file containing the XML to parse
f
,
HandlerBase
The SAX HandlerBase to use.
hb
)

Deprecated as a consequence of HandlerBase being deprecated.
Parse the content of the file specified as XML using the specified org.xml.sax.HandlerBase.
public void
parse(File
The file containing the XML to parse
f
,
DefaultHandler
The SAX DefaultHandler to use.
dh
)

Parse the content of the file specified as XML using the specified org.xml.sax.helpers.DefaultHandler.

public void
parse(InputSource
The InputSource containing the content to be parsed.
is
,
HandlerBase
The SAX HandlerBase to use.
hb
)

Deprecated as a consequence of HandlerBase being deprecated.
Parse the content given org.xml.sax.InputSource as XML using the specified org.xml.sax.HandlerBase.
public void
parse(InputSource
The InputSource containing the content to be parsed.
is
,
DefaultHandler
The SAX DefaultHandler to use.
dh
)

Parse the content given org.xml.sax.InputSource as XML using the specified org.xml.sax.helpers.DefaultHandler.

public void
reset()

Reset this SAXParser to its original configuration.

public abstract void
setProperty(String
The name of the property to be set.
name
,
Object
The value of the property to be set.
value
)

Sets the particular property in the underlying implementation of org.xml.sax.XMLReader.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

SAXParserback to summary
protected SAXParser()

Protected constructor to prevent instantiation. Use javax.xml.parsers.SAXParserFactory#newSAXParser().

Method Detail

getParserback to summary
public abstract Parser getParser() throws SAXException

Deprecated

as a consequence of Parser being deprecated. See corresponding docs for further information.

Returns the SAX parser that is encapsulated by the implementation of this class.

Returns:Parser

The SAX parser that is encapsulated by the implementation of this class.

Exceptions
SAXException:
If any SAX errors occur during processing.
getPropertyback to summary
public abstract Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException

Returns the particular property requested for in the underlying implementation of org.xml.sax.XMLReader.

Parameters
name:String

The name of the property to be retrieved.

Returns:Object

Value of the requested property.

Exceptions
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.
See Also
org.xml.sax.XMLReader#getProperty
getSchemaback to summary
public Schema getSchema()

Get a reference to the Schema being used by the XML processor.

If no schema is being used, null is returned.

Returns:Schema

Schema being used or null if none in use

Exceptions
UnsupportedOperationException:
When implementation does not override this method
Since
1.5
getXMLReaderback to summary
public abstract XMLReader getXMLReader() throws SAXException

Returns the org.xml.sax.XMLReader that is encapsulated by the implementation of this class.

Returns:XMLReader

The XMLReader that is encapsulated by the implementation of this class.

Exceptions
SAXException:
If any SAX errors occur during processing.
isNamespaceAwareback to summary
public abstract boolean isNamespaceAware()

Indicates whether or not this parser is configured to understand namespaces.

Returns:boolean

true if this parser is configured to understand namespaces; false otherwise.

isValidatingback to summary
public abstract boolean isValidating()

Indicates whether or not this parser is configured to validate XML documents.

Returns:boolean

true if this parser is configured to validate XML documents; false otherwise.

isXIncludeAwareback to summary
public boolean isXIncludeAware()

Get the XInclude processing mode for this parser.

Returns:boolean

the return value of the SAXParserFactory#isXIncludeAware() when this parser was created from factory.

Exceptions
UnsupportedOperationException:
When implementation does not override this method
Since
1.5
See Also
SAXParserFactory#setXIncludeAware(boolean)
parseback to summary
public void parse(InputStream is, HandlerBase hb) throws SAXException, IOException

Deprecated

as a consequence of HandlerBase being deprecated. See corresponding docs for further information.

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.HandlerBase. Use of the DefaultHandler version of this method is recommended as the HandlerBase class has been deprecated in SAX 2.0.

Parameters
is:InputStream

InputStream containing the content to be parsed.

hb:HandlerBase

The SAX HandlerBase to use.

Exceptions
SAXException:
If parse produces a SAX error.
IOException:
If an IO error occurs interacting with the InputStream.
IllegalArgumentException:
If the given InputStream is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(InputStream is, HandlerBase hb, String systemId) throws SAXException, IOException

Deprecated

as a consequence of HandlerBase being deprecated. See corresponding docs for further information.

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.HandlerBase. Use of the DefaultHandler version of this method is recommended as the HandlerBase class has been deprecated in SAX 2.0.

Parameters
is:InputStream

InputStream containing the content to be parsed.

hb:HandlerBase

The SAX HandlerBase to use.

systemId:String

The systemId which is needed for resolving relative URIs.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO error occurs interacting with the InputStream.
IllegalArgumentException:
If the given InputStream is null.
See Also
version of this method instead.
parseback to summary
public void parse(InputStream is, DefaultHandler dh) throws SAXException, IOException

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.helpers.DefaultHandler.

Parameters
is:InputStream

InputStream containing the content to be parsed.

dh:DefaultHandler

The SAX DefaultHandler to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the given InputStream is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(InputStream is, DefaultHandler dh, String systemId) throws SAXException, IOException

Parse the content of the given java.io.InputStream instance as XML using the specified org.xml.sax.helpers.DefaultHandler.

Parameters
is:InputStream

InputStream containing the content to be parsed.

dh:DefaultHandler

The SAX DefaultHandler to use.

systemId:String

The systemId which is needed for resolving relative URIs.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the given InputStream is null.
See Also
version of this method instead.
parseback to summary
public void parse(String uri, HandlerBase hb) throws SAXException, IOException

Deprecated

as a consequence of HandlerBase being deprecated. See corresponding docs for further information.

Parse the content described by the giving Uniform Resource Identifier (URI) as XML using the specified org.xml.sax.HandlerBase. Use of the DefaultHandler version of this method is recommended as the HandlerBase class has been deprecated in SAX 2.0

Parameters
uri:String

The location of the content to be parsed.

hb:HandlerBase

The SAX HandlerBase to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the uri is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(String uri, DefaultHandler dh) throws SAXException, IOException

Parse the content described by the giving Uniform Resource Identifier (URI) as XML using the specified org.xml.sax.helpers.DefaultHandler.

Parameters
uri:String

The location of the content to be parsed.

dh:DefaultHandler

The SAX DefaultHandler to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the uri is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(File f, HandlerBase hb) throws SAXException, IOException

Deprecated

as a consequence of HandlerBase being deprecated. See corresponding docs for further information.

Parse the content of the file specified as XML using the specified org.xml.sax.HandlerBase. Use of the DefaultHandler version of this method is recommended as the HandlerBase class has been deprecated in SAX 2.0

Parameters
f:File

The file containing the XML to parse

hb:HandlerBase

The SAX HandlerBase to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the File object is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(File f, DefaultHandler dh) throws SAXException, IOException

Parse the content of the file specified as XML using the specified org.xml.sax.helpers.DefaultHandler.

Parameters
f:File

The file containing the XML to parse

dh:DefaultHandler

The SAX DefaultHandler to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the File object is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(InputSource is, HandlerBase hb) throws SAXException, IOException

Deprecated

as a consequence of HandlerBase being deprecated. See corresponding docs for further information.

Parse the content given org.xml.sax.InputSource as XML using the specified org.xml.sax.HandlerBase. Use of the DefaultHandler version of this method is recommended as the HandlerBase class has been deprecated in SAX 2.0

Parameters
is:InputSource

The InputSource containing the content to be parsed.

hb:HandlerBase

The SAX HandlerBase to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the InputSource object is null.
See Also
org.xml.sax.DocumentHandler
parseback to summary
public void parse(InputSource is, DefaultHandler dh) throws SAXException, IOException

Parse the content given org.xml.sax.InputSource as XML using the specified org.xml.sax.helpers.DefaultHandler.

Parameters
is:InputSource

The InputSource containing the content to be parsed.

dh:DefaultHandler

The SAX DefaultHandler to use.

Exceptions
SAXException:
If any SAX errors occur during processing.
IOException:
If any IO errors occur.
IllegalArgumentException:
If the InputSource object is null.
See Also
org.xml.sax.DocumentHandler
resetback to summary
public void reset()

Reset this SAXParser to its original configuration.

SAXParser is reset to the same state as when it was created with SAXParserFactory#newSAXParser(). reset() is designed to allow the reuse of existing SAXParsers thus saving resources associated with the creation of new SAXParsers.

The reset SAXParser is not guaranteed to have the same Schema Object, e.g. Object#equals(Object obj). It is guaranteed to have a functionally equal Schema.

Exceptions
UnsupportedOperationException:
When Implementations do not override this method
Since
1.5
setPropertyback to summary
public abstract void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException

Sets the particular property in the underlying implementation of org.xml.sax.XMLReader. A list of the core features and properties can be found at http://sax.sourceforge.net/?selected=get-set.

All implementations that implement JAXP 1.5 or newer are required to support the javax.xml.XMLConstants#ACCESS_EXTERNAL_DTD and javax.xml.XMLConstants#ACCESS_EXTERNAL_SCHEMA properties.

Parameters
name:String

The name of the property to be set.

value:Object

The value of the property to be set.

Exceptions
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.
See Also
org.xml.sax.XMLReader#setProperty