You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-user@axis.apache.org by Robert G <ro...@yahoo.com> on 2005/01/26 17:58:47 UTC

Soap Encoding Confusion...

(This is a question about client-side deSerialization
with Axis-C++, release 1.4):

My Axis-Java server returns the following XML:

<soapenv:Envelope
 xmlns:soapenv=
 "http://schemas.xmlsoap.org/soap/envelope/"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"         
                     
 xmlns:xsi=
 "http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
 <ns1:getIssueResponse
  soapenv:encodingStyle=
  "http://schemas.xmlsoap.org/soap/encoding/"         
  xmlns:ns1=
  "http://localhost:8080/axis/services/DataService">
  <getIssueReturn xsi:type="ns2:IssueRecord"  
   xmlns:ns2="urn:DataService">
   <ISSD xsi:type="soapenc:string" 
    xmlns:soapenc=
    "http://schemas.xmlsoap.org/soap/encoding/"
    >blah</ISSD>
  </getIssueReturn>
 </ns1:getIssueResponse>
</soapenv:Body>
</soapenv:Envelope>

The (Axis-C++) SoapDeSerializer class chokes on the
<ISSD> element, because, evidently, it is expecting
the qname specified in the xsi:type attribute to be in
the "http://www.w3.org/2001/XMLSchema" (XSD_URI)
namespace, not the
"http://schemas.xmlsoap.org/soap/encoding/" (XSD_ENC)
namespace.  I can't haven't found any documentation to
indicate how to control this behavior.

Thanks,
Robert


		
__________________________________ 
Do you Yahoo!? 
Meet the all-new My Yahoo! - Try it today! 
http://my.yahoo.com