I'm trying to communicate with a certain remote web service, and I seem to be sending it messages that it can't interpret correctly. I wasn't given any implementation details for the web service, but I was given the WSDL. Here's one section of the WSDL:
I used wsimport to form Java objects from the WSDL, then used these to send a SOAP message to the web service. I set the Value element to an object of type "SearchCriteria", which was also defined in the WSDL. Here's a part of the SOAP message:
However, the web service seems to expect the message to look like this, which is what the "sample" web service client sent:
<wes:SearchCriteria> (SearchCriteria stuff goes here) </wes:SearchCriteria>
Since the WSDL's are the same, I assume there must be some kind of annotation or binding option that makes xs:AnyType into a wrapper tag rather than a single tag with a specific xsi:type. Does anyone know what that might be?
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com