I had an existing webservice that was running. There was a method that returned a value object. I went ahead and updated the value object with few more attributes. The updated webservice has now got a new wsdl.
I noticed that the users who were using old client jar to access th old webservice are still not affected. How the webservice response is compatible (modified) to fit into the old client jar users?
posted 8 years ago
Originally posted by Elango Valluvan: I noticed that the users who were using old client jar to access th old webservice are still not affected. How the webservice response is compatible (modified) to fit into the old client jar users?
It seems that you are "fortunate" enough that the old client jars treat the new attributes (XML elements) in the SOAP response message payload simply as optional elements and therefore ignore them as long as they are still receiving the old ones that they require. The stubs usually do not check the WSDL once they have been generated, nor do they validate against any schemas that the old or new WSDL may have been referencing - they tend to only generate errors once the (un)marshalling code (which is based on the old schema during code generation time) runs into trouble. Adding required elements to the SOAP request message payload and removing required elements from the SOAP response message payload will still create problems.