Deserialization of derived types gets messed up
-----------------------------------------------

         Key: AXIS-1919
         URL: http://issues.apache.org/jira/browse/AXIS-1919
     Project: Axis
        Type: Bug
  Components: Serialization/Deserialization  
    Versions: 1.2RC3    
 Environment: WinXP, JDK1.5.01
    Reporter: Simon Fell
    Priority: Blocker


I generated client stubs from the attached WSDL, and made a call to the 
retrieve method, which corectly generates this request

<?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:Header>
<ns1:SessionHeader soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"; 
soapenv:mustUnderstand="0" xmlns:ns1="urn:sforce">
<ns2:sessionId 
xmlns:ns2="urn:enterprise.soap.sforce.com">AKBzj2_geoRHlSEVJEqnoGrbMxtNzKqjQIMN.XcNCE1BbmJXoT_Wikatr5xneVBolvUZL4Pa6jmoqd0ZwBrV42pYnKO9AsNCSeX5jsUoLXQ=</ns2:sessionId>
</ns1:SessionHeader></soapenv:Header><soapenv:Body>
<retrieve xmlns="urn:enterprise.soap.sforce.com">
<fieldList>Id, Name, AccountNumber</fieldList>
<sObjectType>Account</sObjectType>
<ids>001x0000002h6uMAAQ</ids></retrieve>
</soapenv:Body></soapenv:Envelope>

The server responds with this response, which is valid to the WSDL (and is 
generated with Axis 1.1)
<?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>
  <retrieveResponse xmlns="urn:enterprise.soap.sforce.com">
   <result xsi:type="sf:Account" 
xmlns:sf="urn:sobject.enterprise.soap.sforce.com">
    <sf:Id>001x0000002h6uMAAQ</sf:Id>
    <sf:Name>Account 2</sf:Name>
   </result>
  </retrieveResponse>
 </soapenv:Body>
</soapenv:Envelope>

It contains a single result object, however the resulting SObject array 
returned by the generated retrieve call has 2 items in the array, both of the 
base SObject type, not the derived Account type, and none of the fields are 
populated.

The same scenario works fine using Axis 1.1

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira

Reply via email to