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 "BEN ABDALLAH Adnene (JIRA)" <ax...@ws.apache.org> on 2006/09/25 16:00:50 UTC

[jira] Commented: (AXIS-2485) Output-Messages using soapenc:Array deserialize to arrays with null elements

    [ http://issues.apache.org/jira/browse/AXIS-2485?page=comments#action_12437564 ] 
            
BEN ABDALLAH Adnene commented on AXIS-2485:
-------------------------------------------

The fix of this issue is very important to me. I need it to use the CDRonDemand soap service of Cisco Call Manager.
I am trying to find a solution for this problem but I didn't succeed. I am quite new in SOAP and axis programming.

> Output-Messages using soapenc:Array deserialize to arrays with null elements
> ----------------------------------------------------------------------------
>
>                 Key: AXIS-2485
>                 URL: http://issues.apache.org/jira/browse/AXIS-2485
>             Project: Apache Axis
>          Issue Type: Bug
>          Components: Serialization/Deserialization
>    Affects Versions: 1.3, 1.4
>            Reporter: Thomas Jacob
>
> When using an output message with one parameter, whose type is a complex type using soapenc:Array, e.g.
> 	<complexType name="ProductArray">
> 		<complexContent>
> 			<restriction base="soapenc:Array">
> 				<attribute ref="soapenc:arrayType" wsdl:arrayType="product:Product[]"/>
> 			</restriction>
> 		</complexContent>
> 	</complexType>
> The response SOAP envelope is decoded incorrectly. First, it is decoded into an array of arrays, for example if the original response contains 3 elements, it is decoded into an array of 3 elements, each element being an array of 1 element, containing the actual element (Product in this case).
> The mapper to Java types does not understand the inner arrays correctly, and transforms them into nulls.
> So eventually, the caller receives an array with 3 nulls.
> Using a complex type with a sequence of on element, set to maxOccurs="unbounded" works well, e.g.
> 	<complexType name="ProductArray">
> 		<sequence>
> 			<element name="elements" type="product:Product" maxOccurs="unbounded"/>
> 		</sequence>
> 	</complexType>
> Also, the complex type with soapenc:Array works fine for input messages, i.e. method parameters.
> Only soapenc:Array in the output does not work.
> The bug occurs in versions 1.3 and 1.4 of Axis. I don't know whether it also occurs in earlier versions.

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org