axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Franz Fehringer <...@isogmbh.de>
Subject Re: [jira] Closed: (AXISCPP-991) Deserializing complex type broken when start-end element tag is encountered
Date Mon, 15 Jan 2007 10:49:51 GMT
Hallo Nadir,

Does the checked in fix correctly handle the case
<mytag mykey="myvalue"/>
where *two* (or more) optional elements are missing.
I was slightly concerned about this case(s) with my solution.

Cheers

Franz


nadir amra (JIRA) schrieb:
>      [ https://issues.apache.org/jira/browse/AXISCPP-991?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
>
> nadir amra closed AXISCPP-991.
> ------------------------------
>
>        Resolution: Fixed
>     Fix Version/s: current (nightly)
>
> I moved the fault comment ot axiscpp-1011 (I reopened issue and pasted the comment),
will be fixing it soon. 
>
> I want to close out this issue.  I created two testcases, StartEndElementAttributes and
StartEndElement, one with attributes and one without, that return start/end element. 
>
> The tests work and the code has been put to SVN.  I implemented Franz's solution in keeping
track when a start/end element was encountered, and a subsequent peek will return a null string
when last node processed was a start/end element.  
>
> The flag is set true or false when next() or anyNext() is invoked.  Peek will check the
flag and if start/end element, will return null string. 
>
> Seems to work pretty good.  
>
>   
>> Deserializing complex type broken when start-end element tag is encountered
>> ---------------------------------------------------------------------------
>>
>>                 Key: AXISCPP-991
>>                 URL: https://issues.apache.org/jira/browse/AXISCPP-991
>>             Project: Axis-C++
>>          Issue Type: Bug
>>          Components: Client - Deserialization
>>            Reporter: nadir amra
>>         Assigned To: nadir amra
>>             Fix For: current (nightly)
>>
>>
>> If a complex type defined as:
>>       <s:complexType name="SortR">
>>         <s:sequence>
>>           <s:element minOccurs="0" maxOccurs="1" name="ListMsg" type="tns:ArrayOfMsgS"
/>
>>           <s:element minOccurs="0" maxOccurs="1" name="DateMed" type="s:string"
/>
>>           <s:element minOccurs="1" maxOccurs="1" name="NumberMed" type="s:int"
/>
>>         </s:sequence>
>>       </s:complexType>
>> And the response comes back as:
>> <SortRResult>
>>     <ListMsg/>
>>     <DateMed>2006-11-10</DateMed>
>>     <NumberMed>123456</NumberMed>
>> .
>> .
>> The deserialization of ListMsg does not recognize the fact that empty element was
passed and thus attempts to parse the subsequent data as if it was part of ListMsg. 
>>     
>
>   


Mime
View raw message