I created a Web Service from a WSDL that come from Java (apache soap).
It contains the definition of Vector as complex type:
<schema targetNamespace="http://xml.apache.org/xml-soap"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="Vector">
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="item"
type="xsd:anyType"/>
</sequence>
</complexType>
</schema>
..Net generate the following (wrong) class:
<System.Xml.Serialization.SoapTypeAttribute("Vecto r",
"http://xml.apache.org/xml-soap")> _
Public Class Vector
Public item() As Object
End Class
I changed it in:
<System.Xml.Serialization.SoapTypeAttribute("Vecto r",
"http://xml.apache.org/xml-soap")> _
Public Class Vector
Inherits ArrayList
End Class
There is a method XX with a parameter in0 of type Vector.
The problem is: The Soap request is:
<in0 xmlns:ns2="http://xml.apache.org/xml-soap" xsi:type="ns2:Vector">
....
</in0>
My Web Service wants:
<soapenc:Array id="id2" soapenc:arrayType="type[2]">
....
</soapenc:Array>
I can't change the request message!!
Anyone knows a solution??
Thanks in advance,
Emanuele