You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Adrian Dick (JIRA)" <ax...@ws.apache.org> on 2005/03/09 14:11:56 UTC
[jira] Assigned: (AXISCPP-515) Complex response containing array of complex elements does not deserialize
[ http://issues.apache.org/jira/browse/AXISCPP-515?page=history ]
Adrian Dick reassigned AXISCPP-515:
-----------------------------------
Assign To: Adrian Dick
> Complex response containing array of complex elements does not deserialize
> --------------------------------------------------------------------------
>
> Key: AXISCPP-515
> URL: http://issues.apache.org/jira/browse/AXISCPP-515
> Project: Axis-C++
> Type: Bug
> Components: Deserialization
> Reporter: Andrew Perry
> Assignee: Adrian Dick
>
> I have created a new service called Complex lists which tests arrays within complex types and elements within complext types that have a different namespace to the parent. The request is serialized correctly, but the response fails to deserialize correctly and the stub returns a NULL object to the client. Both the request and response have complex types which contain nillable elements. When the response has nil elements the deserializer throws a SIGSEGV signal.
> The 'full' or non-nilled response message is
> -----------------------------------
> <?xml version="1.0" encoding="UTF-8"?>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <soapenv:Body>
> <multilistResponse xmlns="http://complexlist.test.apache.org">
> <multilistReturn>
> <attrlist xmlns="http://complexlistservice.test.apache.org">
> <item>
> <m_list>
> <item>never odd or even</item>
> <item>m_list string array element 2</item>
> </m_list>
> <name>namepair return</name>
> </item>
> <item>
> <m_list>
> <item>any data string</item>
> <item>m_list string array element 2</item>
> </m_list>
> <name>namepair2 return</name>
> </item>
> </attrlist>
> <errorcode xmlns="http://complexlistservice.test.apache.org">
> 7
> </errorcode>
> <errortext xmlns="http://complexlistservice.test.apache.org">
> request successful
> </errortext>
> </multilistReturn>
> </multilistResponse>
> </soapenv:Body>
> </soapenv:Envelope>
> -----------------------------------
> This response message does return a value to attrlisterr with the correct errorcode and errortext data, but the nested complex type array does not deserialize correctly. The item->name element is deserialized correctly, but the m_list nested complex type does not.
> If any of the elements in the complex response are nil, which is valid as they are nillable, then the deserializer returns a NULL to the client.
> If all the elements are nil then the deserilaizer crashes.
> Nil response message
> -----------------------------------
> <?xml version="1.0" encoding="UTF-8"?>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <soapenv:Body>
> <multilistnilResponse xmlns="http://complexlist.test.apache.org">
> <multilistnilReturn>
> <attrlist xsi:nil="true" xmlns="http://complexlistservice.test.apache.org"/>
> <errorcode xmlns="http://complexlistservice.test.apache.org">
> 0
> </errorcode>
> <errortext xsi:nil="true" xmlns="http://complexlistservice.test.apache.org"/>
> </multilistnilReturn>
> </multilistnilResponse>
> </soapenv:Body>
> </soapenv:Envelope>
> -----------------------------------
--
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