- I think that the marshall methods need to handle the JAXBElement, in simple case just check if passed object is instance of the JAXBElement and retrieve it's value, in more complex one use the QName from the element and set that as the root element name. (Done)
- The JAXB Marshaller defines set of properties that will need to be handled. (Done)
- The unmarshall methods that creates the JAXBElement as a result should also correclty set the QName of the created element. (Done)
- The current implementation uses a single shared unmarshaller instance, this may not be thread safe, especially for methods that unmarshalls to JAXBElement which sets the expected class.