You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Sagara Gunathunga (Updated) (JIRA)" <ji...@apache.org> on 2011/11/24 04:32:40 UTC
[jira] [Updated] (AXIS2-5195) Infinite loop when deserializing an
array that enclosed by a parent element with xsi:type attribute.
[ https://issues.apache.org/jira/browse/AXIS2-5195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sagara Gunathunga updated AXIS2-5195:
--------------------------------------
Description:
When deserializing an Array it passes parent OMElement recursively to the deserialize method in order to process all array elements. But when xsi:type attribute present on the parent element deserialize method locally override array type using xsi:type value, this result into a infinite loop.
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Body>
<ns2:echoObject xmlns:ns2="http://sample">
<ns2:argObj xmlns:ns1="http://sample/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns1:QueryBean">
<ns1:columnList>abc</ns1:columnList>
<ns1:columnList>gef</ns1:columnList>
</ns2:argObj>
</ns2:echoObject>
</soapenv:Body>
</soapenv:Envelope>
was:
When deserializing an Array it passes parent OMElement recursively to the deserialize method in order to process all array elements. But when xsi:type attribute present on the parent element deserialize method locally override array type using xsi:type value, this result into a infinite loop. This should avoid deserializing an Array.
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Body>
<ns2:echoObject xmlns:ns2="http://sample">
<ns2:argObj xmlns:ns1="http://sample/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns1:QueryBean">
<ns1:columnList>abc</ns1:columnList>
<ns1:columnList>gef</ns1:columnList>
</ns2:argObj>
</ns2:echoObject>
</soapenv:Body>
</soapenv:Envelope>
> Infinite loop when deserializing an array that enclosed by a parent element with xsi:type attribute.
> -----------------------------------------------------------------------------------------------------
>
> Key: AXIS2-5195
> URL: https://issues.apache.org/jira/browse/AXIS2-5195
> Project: Axis2
> Issue Type: Bug
> Components: adb
> Affects Versions: 1.6.1
> Reporter: Sagara Gunathunga
> Assignee: Sagara Gunathunga
> Priority: Critical
> Fix For: 1.6.2, 1.7.0
>
>
> When deserializing an Array it passes parent OMElement recursively to the deserialize method in order to process all array elements. But when xsi:type attribute present on the parent element deserialize method locally override array type using xsi:type value, this result into a infinite loop.
> <?xml version='1.0' encoding='UTF-8'?>
> <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
> <soapenv:Body>
> <ns2:echoObject xmlns:ns2="http://sample">
> <ns2:argObj xmlns:ns1="http://sample/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns1:QueryBean">
> <ns1:columnList>abc</ns1:columnList>
> <ns1:columnList>gef</ns1:columnList>
> </ns2:argObj>
> </ns2:echoObject>
> </soapenv:Body>
> </soapenv:Envelope>
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org