Comment 6 for bug 1096004

Revision history for this message
André (andre-miras) wrote :

Disclaimer: I don't know very much about SOAP.
I've played with it a bit and I think the issue comes from the .NET client not supporting SOAP operation style="rpc" from the WSDL description. But, this is to be confirmed.
I didn't know how I could step-by-step debug the C# client to see the unserialize part, so I did some "monkey debugging" to understand what exactly the .NET client didn't like.
Here is how I proceeded.
I created a very simple .NET SOAP service that was just returning an array of int. I did the same with Ladon. Then I saved both WSDL description and both responses message and compared them.
I "patched" ladon/interface/soap.py so it returned the .NET WSDL and response hardcoded. Then I tried to make them converge by changing the .NET WSDL and response with little iterations and I checked with the C# client if it broke or not.
I went to a point where both response were almost similar, but with slightly different WSDL (one using document operation, the other using RPC).
The next step is to create a soapdotnet.py service by drawing inspiration from modified XML response (easy) and WSDL description (harder).
I'll attach the files I used, the first is the simple Ladon service Python description.
I'm not sure I'll be able to work on draft patch as we're switching to a gsoap sever because of this issue.