JavaTM Architecture for XML Binding
2.0 Changelog
Specification Version: 2.0
Reference Implementation (RI) Version: 2.0 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 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...