Make an adaptor that makes it possible to use the PayloadRoot annotation on a method taking a single parameter javax.xml.Source. The parameter should be a java.xml.Source reference to the payload of the message.
The Source param is very convinient when implementing XPath in the endpoint without using the XPathParam annotation.
@PayloadRoot(localPart = TRACKING_MESSAGE_INFO, namespace = NAMESPACE_XQ)
public Source invokeTrackingMessageInfo(Source request) throws Exception
This issue is solved by adding the class SourceParamMethodEndpointAdapter that adapts to a MethodEndpoint and supports all methods taking exactly one Source parameter.