You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Garbacz Paweł <p....@teta.com.pl> on 2005/04/28 15:32:47 UTC
Return string[][][]
Hi everyone,
I had this stupid situation. I wrote a WebService exhibiting the web method String[][][] getUpdates(). Until it had the definition String[][] getUpdates() it worked fine. I was wondering if there is a problem with Axis servlet or something, because when I use my web method in C# project made in VS.NET, it builds a wrapper method as string[] getUpdates() instead of string[][][] getUpdates().
Type definition in wsdl generated by Axis is:
<complexType name="ArrayOfArrayOfArrayOf_xsd_string">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[][][]"/>
</restriction>
</complexContent>
</complexType>
The relevant web method written in C# produces quite different wsdl:
<s:complexType name="ArrayOfArrayOfArrayOfString">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfArrayOfString" nillable="true" type="tns:ArrayOfArrayOfString"/>
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfArrayOfString">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfString" nillable="true" type="tns:ArrayOfString"/>
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfString">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string"/>
</s:sequence>
</s:complexType>
One can see the difference - the first type is written as simple array type, the second one uses simple type made more complex (as a collection). Is it OK? Maybe Axis does something wrong?
--
Best regards,
Paweł Garbacz (Web Technology Team)
TETA S.A. --== www.teta.com.pl ==--
Re: Return string[][][]
Posted by Anne Thomas Manes <at...@gmail.com>.
This is not a valid XML Schema type: xsd:string[][][]
Anne
On 4/28/05, Garbacz Paweł <p....@teta.com.pl> wrote:
> Hi everyone,
>
> I had this stupid situation. I wrote a WebService exhibiting the web method String[][][] getUpdates(). Until it had the definition String[][] getUpdates() it worked fine. I was wondering if there is a problem with Axis servlet or something, because when I use my web method in C# project made in VS.NET, it builds a wrapper method as string[] getUpdates() instead of string[][][] getUpdates().
>
> Type definition in wsdl generated by Axis is:
> <complexType name="ArrayOfArrayOfArrayOf_xsd_string">
> <complexContent>
> <restriction base="soapenc:Array">
> <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[][][]"/>
> </restriction>
> </complexContent>
> </complexType>
>
> The relevant web method written in C# produces quite different wsdl:
>
> <s:complexType name="ArrayOfArrayOfArrayOfString">
> <s:sequence>
> <s:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfArrayOfString" nillable="true" type="tns:ArrayOfArrayOfString"/>
> </s:sequence>
> </s:complexType>
> <s:complexType name="ArrayOfArrayOfString">
> <s:sequence>
> <s:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfString" nillable="true" type="tns:ArrayOfString"/>
> </s:sequence>
> </s:complexType>
> <s:complexType name="ArrayOfString">
> <s:sequence>
> <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string"/>
> </s:sequence>
> </s:complexType>
>
> One can see the difference - the first type is written as simple array type, the second one uses simple type made more complex (as a collection). Is it OK? Maybe Axis does something wrong?
>
> --
> Best regards,
>
> Paweł Garbacz (Web Technology Team)
> TETA S.A. --== www.teta.com.pl ==--
>