JavaTM Architecture for XML Binding
Specification Version: 2.0
Reference Implementation (RI) Version: 2.0.2 fcs
The JAXB 2.0 RI is a major reimplementation to meet the requirements of
the 2.0 specification.
Please refer to the JAXB 1.0.x changelog for older releases.
Notable Changes between 2.0.1 to 2.0.2
Notable Changes between 2.0 to 2.0.1
Notable Changes between 2.0 Early Access 3 and 2.0 First Customer Ship (FCS)
- Java to schema samples are added
- Added <xjc:javaType> vendor customization
- Added experimental <xjc:simple> vendor customization, which brings in a new simpler and better binding mode
- The spec has renamed AccessType to XmlAccessType, and @AccessorType to @XmlAccessorType.
- Various error handling improvements
- Experimental canonicaliztion support is added.
- The '-b' option can now take a directory and recursively search for all "*.xjb" files.
- Fixed various issues regarding using JAXB from codef inside a restricted security sandbox.
- Added more pluggability points for plugins to customize the code generation behavior.
- Some of the code is split into a separate istack-commons project to promote more reuse among projects.
- Made a few changes so that RetroTranslator can translate the JAXB RI (and its generated code) to run it on JDK 1.4 and earlier
- Improved the quality of the generated code by removing unnecessary imports.
- Other countless bug fixes
Notable Changes between 2.0 Early Access 2 and 2.0 Early Access 3
- Map property can be now correctly bound to XML Schema
- Default marshaller error handling behavior became draconian (previously errors were ignored.)
- @link to a parameterized type is now correctly generated
- started producing architecture document for those who want to build plugins or play with the RI internal.
- XJC now uses the platform default proxy setting by default.
- @XmlAccessorOrder, @XmlSchemaType and @XmlInlineBinaryData are implemented
- @XmlJavaTypeAdapter on a class/package is implemented
- Marshaller life-cycle events are implemented
- Integration to FastInfoset is improved in terms of performance
- XJC can generate @Generated
- The unmarshaller is significantly rewritten for better performance
- Added schemagen tool and its Ant task
- Various improvements in error reporting during unmarshalling/marshalling
- JAXB RI is now under CDDL
Notable Changes between 2.0 Early Access and 2.0 Early Access 2
- The default for @XmlAccessorType was changed to PUBLIC_MEMBER
- Optimized binary data handling enabled by callbacks in package javax.xml.bind.attachment.
Standards supported include MTOM/XOP and WS-I AP 1.0 ref:swaRef.
- Unmarshal/marshal support of element defaulting
- Improved the quality of the generated Java code
- Fixed bugs in default value handling
- Runtime performance improvements, memory usage improvements
- Added support for <xjc:superInterface> vendor extension
- Migrated source code to http://jaxb2-sources.dev.java.net
- Published NetBeans project file for JAXB RI
- Added more support to the schema generator: anonymous complex types, attribute refs, ID/IDREF, etc
- Implemented javax.xml.bind.Binder support (not 100% done yet)
- Implemented marshal-time validation
- Improved xjc command line interface - better support for proxy options, more options for specifying schema files
- Added schema-2-Java support for simple type substitution
- Added support for the new <jaxb:globalBindings localScoping="nested" | "toplevel"> customization
which helps control deeply nested classes
- Made the default ValidationEventHandler more forgiving in 2.0 than it was in 1.0 (The class
still behaves the same as it did when used by a 1.0 app)
- Added wildcard support for DTD
- Numerous other small changes and bugfixes....
Notable Changes between 1.0.x FCS and 2.0 Early Access
- Support for 100% W3C XML Schema (not all in EA, but planned for FCS)
- Support for binding Java to XML
- Addition of javax.xml.bind.annotation package for controling the binding from Java to XML
- Significant reduction in the number of generated schema-derived classes
- Per complex type definition, generate one value class instead of an interface and implementation class.
- Per global element declaration, generate a factory method instead of generating a schema-derived interface and implementation class.
- Replaced the validation capabilities in 1.0 with JAXP 1.3 validation API's
- Smaller runtime libraries
- Numerous other changes...