This document contains installation instructions and other notes that may help
you use this software library more effectively. See also the JAXP FAQ for more information.
Note:
If you are reading this page online, this is the most current version of the
release notes. If this page was downloaded as part of the release bundle,
please see the JAXP Documentation
page for the most current version of the release notes.
An important technical change in JAXP 1.4 is the addition of the javax.xml.stream.*
packages from StAX, the Streaming API for XML (JSR 173). With this addition, JAXP 1.4 now supports
validation and transformation of documents with the streaming API. Since JAXP 1.4 is integrated in
Java SE 6, the StAX support is transparent on any system running the latest Java.
JAXP 1.4 changed its XML Schema validation logic for gMonth to reflect
the changes made in the XML Schema 1.0 Specification Errata:
E2-12 Error.
Specifically, it will now reject gMonths with a lexical representation
of "--MM--" as invalid.
The following sections summarize the significant changes introduced in
JAXP 1.4. For additional details, please see the appropriate JavaDoc.
1. Package javax.xml.datatype
1.1. Class DatatypeFactory
Changed DATATYPEFACTORY_IMPLEMENTATION_CLASS to
com.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImpl.
Added newInstance(String, ClassLoader)
method.
1.2. Class Duration
Return false if the argument to
equals() is null instead
of throwing NullPointerException.
1.3. Class XMLGregorianCalendar
Return false if the argument to
equals() is null instead
of throwing NullPointerException.
2. Package javax.xml.parsers
2.1. Class DocumentBuilderFactory
Added newInstance(String, ClassLoader)
method.
2.2. Class SAXParserFactory
Added newInstance(String, ClassLoader)
method.
3. Package javax.xml.stream
Added the javax.xml.stream package to support
StAX. The package consists of the following interfaces:
EventFilter
Location
StreamFilter
XMLEventReader
XMLEventWriter
XMLReporter
XMLResolver
XMLStreamConstants
XMLStreamReader
XMLStreamWriter
Classes:
XMLEventFactory
XMLInputFactory
XMLOutputFactory
Exceptions:
XMLStreamException
And errors:
FactoryConfigurationError
4. Package javax.xml.stream.events
Added the javax.xml.stream.events package to support
StAX. The package consists of the following interfaces:
Attribute
Characters
Comment
DTD
EndDocument
EndElement
EntityDeclaration
EntityReference
Namespace
NotationDeclaration
ProcessingInstruction
StartDocument
StartElement
XMLEvent
4.1. Package javax.xml.stream.util
Added the javax.xml.stream.util package to support
StAX. The package consists of the following interfaces:
XMLEventAllocator
XMLEventConsumer
And classes:
EventReaderDelegate
StreamReaderDelegate
5. Package javax.xml.transform
5.1. Class ErrorListener
Clarified the semantics of fatalError().
5.2. Class Transformer
Clarified the semantics of getOutputProperty()
with respect to properties that have not been set explicitly with either
setOutputProperty() or
xsl:output in the stylesheet.
5.3. Class TransformerFactory
Added newInstance(String, ClassLoader)
method.
5.4. Package javax.xml.transform.stax
Added the javax.xml.transform.stax package to support
StAX. The package consists of the following interfaces:
TemplatesHandler
TransformerHandler
And classes:
StAXResult
StAXSource
6. Package javax.xml.validation
6.1. Class Schema
Clarified that the features set on the
SchemaFactory should be passed to the
Validator created with
newValidator().
Clarified that the features set on the
SchemaFactory should be passed to the
ValidatorHandler created with
newValidatorHandler().
6.2. Class SchemaFactory
Added newInstance(String, ClassLoader)
method.
Clarified that the features set on the
SchemaFactory should be passed to the
Schemas created with
newSchema(). Included a note to implementors
and developers about the subtleties associated with
newSchema() in this context.
Clarified that the inputs to newSchema(Source[])
are expected to be XML documents or elements.
Updated documentation of setFeature() to
clarify that the features set on the
SchemaFactory should be passed to the
Schemas created with this factory and by
extension to the Validator and
ValidatorHandlers created from that
Schema.
6.3. Class SchemaFactoryLoader
The SchemaFactoryLoader class was created during the
JAXP 1.3 development process. Shortly before JAXP 1.3 was finished, the
factory mechanisms associated with validation were changed, and this class
was removed. Unfortunately, the file was left in a repository and it
slipped into the
Java 2 Platform Standard Edition 5.0 API Specification.
Since the class can neither be added to JAXP 1.3 nor removed from
the Java 5.0 API Specification due to backwards compatibility issues,
it is being added to JAXP 1.4. The class is harmless and should not
be used. It is being added simply to avoid the confusion that arises when
developers notice that it's defined in the platform but not in JAXP.
Do not use this class.
6.4. Class TypeInfoProvider
Extended the semantics of getElementTypeInfo(),
allowing it to be called from either the startElement event
or the endElement event. This allows the API to
support W3C XML Schema union types more usefully.
When W3C XML Schema validation is being performed, in the case
where an element has a union type, the TypeInfo
returned by a call to getElementTypeInfo() from
the startElement event will be the union type. The
TypeInfo returned by a call from the endElement
event will be the actual member type used to validate the element.
6.5. Class Validator
The Validator may now accept
Sources other than
DOMSource and SAXSource;
for example, StAXSource.
Clarified that the inputs to validate()
are expected to be XML documents or elements.
7. Package javax.xml.xpath
7.1. Class XPath
Clarified that it is the XPathVariableResolver
in effect at compile time that is used to resolve any variables that
appear in the expression.