JAXB is licensed under a dual license - CDDL 1.1 and GPL 2.0 with Class-path Exception. That means you can choose which one of the two suits your needs better and use it under those terms.
We use GlassFish Governance Policy, which means we can only accept contributions under the terms of OCA.
Follow @gfmetro (TBD) on Twitter to get JAXB and wider Metro (WSIT, JAX-WS, ...) related updates. See the Metro website at http://metro.java.net to access Metro documentation and release information.
If you run into any issues or have questions, ask at our user forum: [email protected], or file an issue at one of the issue trackers
- http://java.net/jira/browse/JAXB
- http://java.net/jira/browse/JAX_WS
- http://java.net/jira/browse/WSIT
The NameConverter interface has all instances moved from out to the NameConverterProvider class definition.
Now, the interface is just an interface and can be changed via the SchemaCompiler's options. All previous references to NameConverter.standard are now going through the NameConverterProvider.getStandard() static method.
Binding values were being ignored in the CClassInfo methods and now they are honored if the squeezed name value is set.
Changes throughout the JCodeModel classes were needed to be made so post processing could be done to the instances.
Some changes:
- JBlock content can be reset
- JAssignment exposes right hand side field
- JAnnotationUse exposes itself and the class it models
- JAnnotationStringValue is exposed along with its value
- JAnnotationArrayMember exposes the values
- JExpressionDotClass new class that is used in the JExpr for classes found throughout the model. This exposed itself to outside processes.
- JInvocation allows to view the type and change the type
- JMods is made public
- JNarrowedClass is made public along with getter methods for its values
- JStringLiteral allows the str value to change through a setter method
- JVar enables setting annotations on itself and enables changing the mods
A new class RefFactory was added that can be overridden in the SchemaCompiler's options so change how reference classes are instantiated.
The current implementations where originally found in the RawTypeSetBuilder. Classes that referenced RawTypeSetBuilder.Ref are now referencing the new Ref class.
An example of how to change the functionality of the RefFactory can be found in the AbstractXJCTest#addCustomTestingOptions method
A new class CTBuilderFactory was added that can be overridden in the SchemaCompiler's options so change how complex type builders are instantiated.
The CTBuilder has been updated to load its array of CTBuilders through the factory instead of an instance variable.
An example of how to change the functionality of the CTBuilderFactory can be found in the AbstractXJCTest#addCustomTestingOptions method