JAXB2 Basics is a part of JAXB2 Commons project which implements plugins and tools for JAXB 2.x reference implementation.



JAXB2 Basics

JAXB2 Basics is an open source project which provides useful plugins and tools for JAXB 2.x reference implementation.


Please refer to the wiki for documentation.

JAXB2 Basics can only be used with JAXB/XJC 2.3.0 and higher. JAXB/XJC versions 2.2.x and earlier are no longer supported.

JAXB2 Basics can only be used with Java 1.8 and above.

Using JAXB2 Basics

JAXB2 Basics Plugins

  • SimpleEquals Plugin - generates runtime-free reflection-free equals(...) methods.
  • SimpleHashCode Plugin - generates runtime-free reflection-free hashCode() methods.
  • Equals Plugin - generates reflection-free strategic equals(...) method.
  • HashCode Plugin - generates reflection-free strategic hashCode() method.
  • ToString Plugin - generates reflection-free strategic toString() methods.
  • Copyable Plugin - generates reflection-free strategic copy(...) deep copying.
  • Mergeable Plugin - generates reflection-free strategic merge(...) methods to merge data from two source objects into the given object.
  • Inheritance Plugin - makes schema-derived classes extend certain class or implement certain interfaces.
  • Wildcard Plugin - allows you to specify the wildcard mode for the wildcard properties.
  • AutoInheritance Plugin - makes classes derived from global elements or complex types extend or implement certain classes or interfaces automatically.
  • Setters Plugin - generates setters for collections.
  • Simplify Plugin - simplifies weird properties like aOrBOrC.
  • EnumValue Plugin - makes all the generated enums implement the EnumValue<T> interface.
  • JAXBIndex Plugin - generated jaxb.index files listing schema-derived classes.
  • FixJAXB1058 Plugin - fixes JAXB-1058.