Main Page   Packages   Namespace List   Class Hierarchy   Compound List   Compound Members  

SAXBuilder Class Reference

List of all members.

Public Methods

 SAXBuilder ()
 SAXBuilder (boolean validate)
 SAXBuilder (String saxDriverClass)
 SAXBuilder (String saxDriverClass, boolean validate)
void setFactory (JDOMFactory factory)
void setValidation (boolean validate)
void setErrorHandler (ErrorHandler errorHandler)
void setEntityResolver (EntityResolver entityResolver)
void setDTDHandler (DTDHandler dtdHandler)
void setXMLFilter (XMLFilter xmlFilter)
void setIgnoringElementContentWhitespace (boolean ignoringWhite)
void setFeature (String name, boolean value)
void setProperty (String name, Object value)
Document build (InputSource in) throws JDOMException
Document build (InputStream in) throws JDOMException
Document build (File file) throws JDOMException
Document build (URL url) throws JDOMException
Document build (InputStream in, String systemId) throws JDOMException
Document build (Reader characterStream) throws JDOMException
Document build (Reader characterStream, String SystemId) throws JDOMException
Document build (String systemId) throws JDOMException
void setExpandEntities (boolean expand)

Protected Methods

SAXHandler createContentHandler () throws Exception
void configureContentHandler (SAXHandler contentHandler) throws Exception
XMLReader createParser () throws Exception
void configureParser (XMLReader parser, SAXHandler contentHandler) throws Exception
URL fileToURL (File f) throws MalformedURLException

Protected Attributes

JDOMFactory factory = null

Detailed Description

SAXBuilder builds a JDOM tree using SAX. Information about SAX can be found at http://www.megginson.com/SAX.

Known issues: Relative paths for a DocType or EntityRef may be converted by the SAX parser into absolute paths

Author:
Jason Hunter , Brett McLaughlin , Dan Schaffer , Philip Nelson , Alex Rosen
Version:
Revision:
1.63
,
Date:
2002/02/08 02:49:41


Constructor & Destructor Documentation

SAXBuilder::SAXBuilder   [inline]
 

Creates a new SAXBuilder which will attempt to first locate a parser via JAXP, then will try to use a set of default SAX Drivers. The underlying parser will not validate.

SAXBuilder::SAXBuilder boolean    validate [inline]
 

Creates a new SAXBuilder which will attempt to first locate a parser via JAXP, then will try to use a set of default SAX Drivers. The underlying parser will validate or not according to the given parameter.

Parameters:
validate  boolean indicating if validation should occur.

SAXBuilder::SAXBuilder String    saxDriverClass [inline]
 

Creates a new SAXBuilder using the specified SAX parser. The underlying parser will not validate.

Parameters:
saxDriverClass  String name of SAX Driver to use for parsing.

SAXBuilder::SAXBuilder String    saxDriverClass,
boolean    validate
[inline]
 

Creates a new SAXBuilder using the specified SAX parser. The underlying parser will validate or not according to the given parameter.

Parameters:
saxDriverClass  String name of SAX Driver to use for parsing.
validate  boolean indicating if validation should occur.


Member Function Documentation

Document SAXBuilder::build String    systemId [inline]
 

This builds a document from the supplied URI.

Parameters:
systemId  URI for the input
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build Reader    characterStream,
String    SystemId
[inline]
 

This builds a document from the supplied Reader.

Parameters:
in  Reader to read from.
systemId  base for resolving relative URIs
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build Reader    characterStream [inline]
 

This builds a document from the supplied Reader.

Parameters:
in  Reader to read from.
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build InputStream    in,
String    systemId
[inline]
 

This builds a document from the supplied input stream.

Parameters:
in  InputStream to read from.
systemId  base for resolving relative URIs
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build URL    url [inline]
 

This builds a document from the supplied URL.

Parameters:
url  URL to read from.
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build File    file [inline]
 

This builds a document from the supplied filename.

Parameters:
file  File to read from.
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build InputStream    in [inline]
 

This builds a document from the supplied input stream.

Parameters:
in  InputStream to read from.
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

Document SAXBuilder::build InputSource    in [inline]
 

This builds a document from the supplied input source.

Parameters:
in  InputSource to read from.
Returns:
Document - resultant Document object.
Exceptions:
JDOMException  when errors occur in parsing.

void SAXBuilder::configureContentHandler SAXHandler    contentHandler [inline, protected]
 

This configures the SAXHandler that will be used to build the Document.

The default implementation simply passes through some configuration settings that were set on the SAXBuilder: setExpandEntities() and setIgnoringElementContentWhitespace().

void SAXBuilder::configureParser XMLReader    parser,
SAXHandler    contentHandler
[inline, protected]
 

This configures the XMLReader to be used for reading the XML document.

The default implementation sets various options on the given XMLReader, such as validation, DTD resolution, entity handlers, etc., according to the options that were set (e.g. via setEntityResolver) and set various SAX properties and features that are required for JDOM internals. These features may change in future releases, so change this behavior at your own risk.

SAXHandler SAXBuilder::createContentHandler   [inline, protected]
 

This creates the SAXHandler that will be used to build the Document.

XMLReader SAXBuilder::createParser   [inline, protected]
 

This creates the XMLReader to be used for reading the XML document.

The default behavior is to (1) use the saxDriverClass, if it has been set, (2) try to obtain a parser from JAXP, if it is available, and (3) if all else fails, use a hard-coded default parser (currently the Xerces parser). Subclasses may override this method to determine the parser to use in a different way.

URL SAXBuilder::fileToURL File    f [inline, protected]
 

Imitation of File.toURL(), a JDK 1.2 method, reimplemented here to work with JDK 1.1.

See also:
java.io.File
Parameters:
f  the file to convert
Returns:
the file path converted to a file: URL

void SAXBuilder::setDTDHandler DTDHandler    dtdHandler [inline]
 

This sets custom DTDHandler for the Builder.

Parameters:
dtdHandler  DTDHandler

void SAXBuilder::setEntityResolver EntityResolver    entityResolver [inline]
 

This sets custom EntityResolver for the Builder.

Parameters:
entityResolver  EntityResolver

void SAXBuilder::setErrorHandler ErrorHandler    errorHandler [inline]
 

This sets custom ErrorHandler for the Builder.

Parameters:
errorHandler  ErrorHandler

void SAXBuilder::setExpandEntities boolean    expand [inline]
 

This sets whether or not to expand entities for the builder. A true means to expand entities as normal content. A false means to leave entities unexpanded as EntityRef objects. The default is true.

When this setting is false, the internal DTD subset is retained; when this setting is true, the internal DTD subset is not retained.

Note that Xerces (at least up to 1.4.4) has a bug where entities in attribute values will be misreported if this flag is turned off, resulting in entities to appear within element content. When turning entity expansion off either avoid entities in attribute values, or use another parser like Crimson. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6111

Parameters:
expand  boolean indicating whether entity expansion should occur.

void SAXBuilder::setFeature String    name,
boolean    value
[inline]
 

This sets a feature on the SAX parser. See the SAX documentation for more information.

NOTE: SAXBuilder requires that some particular features of the SAX parser be set up in certain ways for it to work properly. The list of such features may change in the future. Therefore, the use of this method may cause parsing to break, and even if it doesn't break anything today it might break parsing in a future JDOM version, because what JDOM parsers require may change over time. Use with caution.

Parameters:
name  The feature name, which is a fully-qualified URI.
value  The requested state of the feature (true or false).

void SAXBuilder::setIgnoringElementContentWhitespace boolean    ignoringWhite [inline]
 

Specifies whether or not the parser should elminate whitespace in element content (sometimes known as "ignorable whitespace") when building the document. Only whitespace which is contained within element content that has an element only content model will be eliminated (see XML Rec 3.2.1). For this setting to take effect requires that validation be turned on. The default value of this setting is false.

Parameters:
ignoringWhite  Whether to ignore ignorable whitespace

void SAXBuilder::setProperty String    name,
Object    value
[inline]
 

This sets a property on the SAX parser. See the SAX documentation for more information.

NOTE: SAXBuilder requires that some particular properties of the SAX parser be set up in certain ways for it to work properly. The list of such properties may change in the future. Therefore, the use of this method may cause parsing to break, and even if it doesn't break anything today it might break parsing in a future JDOM version, because what JDOM parsers require may change over time. Use with caution.

Parameters:
name  The property name, which is a fully-qualified URI.
value  The requested value for the property.

void SAXBuilder::setValidation boolean    validate [inline]
 

This sets validation for the builder.

Parameters:
validate  boolean indicating whether validation should occur.

void SAXBuilder::setXMLFilter XMLFilter    xmlFilter [inline]
 

This sets custom XMLFilter for the Builder.

Parameters:
xmlFilter  XMLFilter


Member Data Documentation

JDOMFactory SAXBuilder::factory = null [protected]
 

The factory for creating new JDOM objects


The documentation for this class was generated from the following file:
Generated on Sat Mar 30 18:53:04 2002 for JDOM by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001