For about a year now I have been using Axis2/C on the server side with a
great deal of success.  I am now trying to use it on the client side and
things are not working. I just tried with .Net's WCF and it worked fine,
looking at the envelopes, there is an obvious difference:

.Net WCF Envelope:

  <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/";>
    <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
      <getVersionCheck xmlns="urn:mmpp:parataMgr"/>
    </s:Body>
  </s:Envelope>

Axis2/C Envelope:

  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/
">
    <soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing";>
      <wsa:To>http://localhost:8041/axis2/services/parataMgr</wsa:To>
      <wsa:Action>urn:mmpp:parataMgr/getVersionCheck</wsa:Action>

 <wsa:MessageID>urn:uuid:57dbfc1e-a42e-4501-894b-7e6bf4a8f2bb</wsa:MessageID>
    </soapenv:Header>
    <soapenv:Body>
      <n:getVersionCheck xmlns:n="urn:mmpp:parataMgr"></n:getVersionCheck>
    </soapenv:Body>
  </soapenv:Envelope>

I am using the auto generated method signature for
"getVersionCheck|urn:mmpp:parataMgr" operation, I used these options to
generate the code:

-uri ParataMgr.wsdl -d adb -u

And here is the schema from the WSDL:

      <xsd:element name="getVersionCheck">
        <xsd:complexType>
          <xsd:sequence>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>

      <xsd:element name="getVersionCheckResponse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="version" type="xsd:int"></xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>

Reply via email to