I got a problem when using Apache Soap client to invoke .NET web service.
The problem is the "Namespace URI" which is generated by default along with the method name. Below is my soap envelope,
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema">
<SOAP-ENV:Body>
<ns1:VerifyCreditCard xmlns:ns1="http://tempuri.org/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<CardNumber xsi:type="ns1:VerifyCreditCardResult">4123123412341234</CardNumber>
</ns1:VerifyCreditCard>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
The method VerifyCreditCard is fully qualified element name with namespace URI "ns1" and local name "VerifyCreditCard". However the .NET soap server doesn't seem to like the namespace URI "ns1".
If I manually take that namespace URI out, then it works fine. But it is done manually. I don't know how to do it programmatically using Apache soap client.
Does anyone have any ideas ?
BTW: the SOAP spec say that "Immediate child elements of the SOAP Body element MAY be namespace-qualified"
==> that means we MAY not need the namespace URI "ns1" here
Any help is really appreciated,
Thanks,
Hung
