I’ve got a wsdl that contains bits like this:
<complexType name="ArrayOfString">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="Result">
<sequence>
<element maxOccurs="1" minOccurs="0" name="groups" nillable="true" type="impl:ArrayOfString"/>
</sequence>
</complexType>
The type result will be sent from the server to the client. When the value of ‘groups’ is null the SOAP
message returned looks like this:
<multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:Result" xmlns:ns3="urn:mynamespace" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<groups xsi:type="xsd:string" xsi:nil="true"/>
</multiRef>
Java clients built on Axis like this just fine, but clients built with BEA Weblogic tools complain
complain about a type mis-match because it expects an ArrayOfString and not just a string.
Since the BEA client is the only one that can’t cope I assume the problem is with them. What I’m
looking for is the right XML, SOAP, or other reference document that says that this encoding is OK.
Anyone know where to find this?