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 "Julien Wajsberg (JIRA)" <ax...@ws.apache.org> on 2005/03/07 10:32:53 UTC

[jira] Commented: (AXIS-1673) Problem with array of beans in 1.2RC2 (wrapped/literal)

     [ http://issues.apache.org/jira/browse/AXIS-1673?page=comments#action_60348 ]
     
Julien Wajsberg commented on AXIS-1673:
---------------------------------------

This bug is still present in Axis 1.2RC3; do you plan to fix it before Axis 1.2 final ?

> Problem with array of beans in 1.2RC2 (wrapped/literal)
> -------------------------------------------------------
>
>          Key: AXIS-1673
>          URL: http://issues.apache.org/jira/browse/AXIS-1673
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2RC2
>  Environment: Server : Windows 2000
> Client : Windows Xp
> JVM : Sun 1.4.2
>     Reporter: Julien Wajsberg
>     Priority: Critical
>  Attachments: BeanPropertyDescriptor-diff.txt, wrapped_literal_array_test.zip
>
> There's a strange bug in axis 1.2RC2, dealing with array of beans.
> The signature of the called method is :
> public ArrayBean echoArrayBean(ArrayBean param);
> ArrayBean is defined like this :
> public class ArrayBean implements Serializable {
>    private String stringData;
>    private SimpleBean[] simpleBeanArrayData;
> ... accessors ...
> }
> And SimpleBean :
> public class SimpleBean implements Serializable {
>    private String stringData;
>    private int intData;
> ... accessors ...
> }
> The corresponding part of the WSDL generated by Axis follows (in different namespaces, but we don't care here) :
>   <element name="echoArrayBean">
>    <complexType>
>     <sequence>
>      <element name="in0" type="tns1:ArrayBean"/>
>     </sequence>
>    </complexType>
>   </element>
>   <complexType name="ArrayOf_tns1_SimpleBean">
>    <sequence>
>     <element maxOccurs="unbounded" minOccurs="0" name="item" type="tns1:SimpleBean"/>
>    </sequence>
>   </complexType>
>   <complexType name="SimpleBean">
>    <sequence>
>     <element name="intData" type="xsd:int"/>
>     <element name="stringData" nillable="true" type="xsd:string"/>
>    </sequence>
>   </complexType>
>   <complexType name="ArrayBean">
>    <sequence>
>     <element name="simpleBeanArrayData" nillable="true" type="impl:ArrayOf_tns1_SimpleBean"/>
>     <element name="stringData" nillable="true" type="xsd:string"/>
>    </sequence>
>   </complexType>
> What's important here is that "item" is correctly specified as an element of Array_Of_tns1_SimpleBean.
> When I try to invoke this operation with a Weblogic client, I get the following exception :
> java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException: org.xml.sax.SAXException: Invalid element in test.bean.SimpleBean - item
> The corresponding part in the soap message is :
> <n1:echoArrayBean><n1:in0><n2:simpleBeanArrayData  xsi:type="n1:ArrayOf_tns1_SimpleBean">
> <n1:item xsi:type="n2:SimpleBean"><n2:intData>-123456</n2:intData><n2:stringData>ces données sontcomplexes [à@}]</n2:stringData></n1:item>
> <n1:item xsi:type="n2:SimpleBean"><n2:intData>-123456</n2:intData><n2:stringData>ces données sontcomplexes [à@}]</n2:stringData></n1:item>
> </n2:simpleBeanArrayData><n3:stringData>data</n3:stringData></n1:in0></n1:echoArrayBean>
> This message seems to be correct, according to the WSDL. Yet, Axis doesn't like it :/
> Note : we just tried with an Axis client: same soap message, same behaviour.
> -- 
> Julien Wajsberg

-- 
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