axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 24845] New: - complexType in SOAP response has namespace prefix, chokes .net clients
Date Thu, 20 Nov 2003 02:57:05 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24845>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24845

complexType in SOAP response has namespace prefix, chokes .net clients

           Summary: complexType in SOAP response has namespace prefix,
                    chokes .net clients
           Product: Axis
           Version: 1.1
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Serialization/Deserialization
        AssignedTo: axis-dev@ws.apache.org
        ReportedBy: lycono@mindless.com


The SOAP response from Axis for an RPC style service that returns complexTypes 
in the response places a namespace prefix on the complexType elements.  .NET 
clients cannot hanlde this prefix.

There was a thread about this on the user list a while back.  Apparently in 
April of 2002, this issue was fixed.  The thread is here:  
http://marc.theaimsgroup.com/?l=axis-user&m=101793858607643&w=2.  But in both 
the 1.0 and 1.1 releases, this issue remains.  At the request of Davanum, I've 
tested against the latest in CVS.  The issue remains there as well.

I know that this has been discussed before but I was unable to find any other 
references in Bugzilla or the axis-user archive (searching 
for ".net", "prefix", "namespace", "complexType", "interop", etc.).

The respone that axis (compiled from the latest cvs) returns:

<?xml version="1.0" encoding="UTF-8"?>
<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:op2Response 
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
xmlns:ns1="http://DefaultNamespace">
   <ns1:op2Return xsi:type="ns1:MyCustomType">
    <ns1:lotsOfBob xsi:type="ns1:BobType">
     <ns1:AString xsi:type="xsd:anySimpleType">bobEl1</ns1:AString>
    </ns1:lotsOfBob>
    <ns1:lotsOfBob xsi:type="ns1:BobType">
     <ns1:AString xsi:type="xsd:anySimpleType">bobEl2</ns1:AString>
    </ns1:lotsOfBob>
    <ns1:bob xsi:type="ns1:BobType">
     <ns1:AString xsi:type="xsd:anySimpleType">bob value</ns1:AString>
    </ns1:bob>
    <ns1:bar xsi:type="xsd:anySimpleType">fooEl1</ns1:bar>
    <ns1:bar xsi:type="xsd:anySimpleType">fooEl2</ns1:bar>
    <ns1:bar xsi:type="xsd:anySimpleType">fooEl3</ns1:bar>
    <ns1:foo xsi:type="xsd:anySimpleType">foo value</ns1:foo>
   </ns1:op2Return>
  </ns1:op2Response>
 </soapenv:Body>
</soapenv:Envelope>

(As a side note, I'm not sure about the "anySimpleType", with axis 1.1 the type 
values are the correct xsd types - xsd:string).

Notice the ns1 prefix on every element.  A .net client accepts the response, 
(not throwing any errors) but all values are null.  Taking out the 
prefixes, .net correctly understands the response.  I don't know whether 
prefixes or no prefixes in the SOAP message is correct or if both are.  At this 
point though, we are unable to invoke any rpc service that returns a complex 
type hosted by axis with a .net client.

Mime
View raw message