I have generated Java from a WSDL that creates an array of a complex
type that consists of an xsd:string and xsd:base64Binary:

<types>
<schema
targetNamespace="http://www.exchangenetwork.net/schema/v1.0/node.xsd";
xmlns="http://www.w3.org/2001/XMLSchema";
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
elementFormDefault="qualified">
<complexType name="NodeDocument">
<sequence>
<element name="name" type="xsd:string" default="Your document name"/>
<element name="type" type="xsd:string"/>
<element name="content" type="xsd:base64Binary"/>
</sequence>
</complexType>
<complexType name="ArrayofDoc">
<complexContent>
<restriction base="SOAP-ENC:Array">
<attribute ref="SOAP-ENC:arrayType"
wsdl:arrayType="typens:NodeDocument[]"/>
</restriction>
</complexContent>
</complexType>
</schema>
</types>

When a .NET client attempts to pass in the ArrayofDoc when invoking a
method. It returns:

org.xml.sax.SAXException: No deserializer defined for array type
{http://ww.ExchangeNetwork.net/schema/v1.0/node.xsd}NodeDocument

I can't get at any more information in the validator client, but it
works with other implementations using Axis 1.0, but they have written
their clients by hand instead of generating the Java and deployment
files from WSDL2Java. -- Andy

Reply via email to