It seems that everyday, I find another reason to bash WebServices.
A few weeks ago, we were trying desperately to generate proper Java stubs out of an WDSL descriptor that was using return data described in XSD files. We eventually gave up. We now simply return Strings that contain XML formatted as per the XSDs.
Yesterday, I found a weird thing: I had two methods with the same parameters, but (obviously) different names. Apparently, when calling one from the WS client, the other would actually be called on the WS server… Even stranger: depending on some unknown circumstances, it would sometimes work fine.
Well, apparently, this is not a bug, this is a feature! I kid you not, check for yourself. Under the ‘literal’ style, method parameters are part of the signature, but not the method name! For this, you need to use the ‘wrapped’ style.
When oh when will this nonsense stop?