Hi,

I am getting the following exception from a call:

No deserializer defined for array type {http://namespaces.soaplite.com/perl}DocumentID

The returned soap data is:
...
<familyMembers xsi:type="SOAP-ENC:Array"
        SOAP-ENC:arrayType="DocumentID[1]">
    <DocumentID xsi:type="namesp2:DocumentID">
        <ID xsi:type="xsd:string">member1</ID>
    </DocumentID>
</familyMembers>
...

The corresponding parts of the WSDL:

<complexType name="FamilyInfo">
<sequence>
<element name="type" nillable="true" type="tns1:FamilyType"/>
<element name="familyMembers" nillable="true" type="impl:ArrayOf_tns1_DocumentID"/>
<element name="representativeDocumentID" nillable="true" type="tns1:DocumentID"/>
</sequence>
...
<complexType name="ArrayOf_tns1_DocumentID">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="tns1:DocumentID[]"/>
</restriction>
</complexContent>
</complexType>
...
<complexType name="DocumentID">
<sequence>
<element name="ID" nillable="true" type="xsd:string"/>
</sequence>


The WSDL was generated with Java2WSDL, and the Java sources with WSDL2Java, the server is written in perl using SOAP::Lite.
Because SOAP::Lite has only a limited support of WSDL I am not 100% sure whether the SOAP data really is correct, but as far as I understand it, it should be.


Is there really no deserializer available or is something wrong with my namespace? In either case, what do I have to do?
(I already searched the archive, but the mails I found didn't really help me.)


TIA,
Eddie



Reply via email to