Thanks Ivan, In my case it minOccurs is zero so it is wrapped as JAXBElement but the SOAP request/response complains of in compatible with org.apache.xerces.dom.ElementNSImpl.
I also read from the specification that if the lax=true ...
"If true, when an element matches a property marked with XmlAnyElement is known to JAXBContext (for example, there's a class with XmlRootElement that has the same tag name, or there's XmlElementDecl that has the same tag name), the unmarshaller will eagerly unmarshal this element to the JAXB object, instead of unmarshalling it to DOM. Additionally, if the element is unknown but it has a known xsi:type, the unmarshaller eagerly unmarshals the element to a JAXBElement, with the unknown element name and the JAXBElement value is set to an instance of the JAXB mapping of the known xsi:type.
As a result, after the unmarshalling, the property can become heterogeneous; it can have both DOM nodes and some JAXB objects at the same time. "
So, I am not sure how to oevercome this issue.