Calling Axis Web Service with Complex Data Type
<p>I have the following wsdl:</p>

<pre><code>&lt;wsdl:definitions targetNamespace="http://localhost:8080/webservice/Retriever.jws"&gt;
    &lt;wsdl:types&gt;
        &lt;schema targetNamespace="http://localhost:8080/webservice/Retriever.jws"&gt;
            &lt;import namespace="http://DefaultNamespace"/&gt;
            &lt;import namespace="http://schemas.xmlsoap.org/soap/encoding/"/&gt;
            &lt;complexType name="ArrayOf_xsd_string"&gt;
                &lt;complexContent&gt;
                    &lt;restriction base="soapenc:Array"&gt;
                        &lt;attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/&gt;
                    &lt;/restriction&gt;
                &lt;/complexContent&gt;
            &lt;/complexType&gt;
            &lt;complexType name="ArrayOf_xsd_int"&gt;
                &lt;complexContent&gt;
                    &lt;restriction base="soapenc:Array"&gt;
                        &lt;attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:int[]"/&gt;
                    &lt;/restriction&gt;
                &lt;/complexContent&gt;
            &lt;/complexType&gt;
        &lt;/schema&gt;
        &lt;schema targetNamespace="http://DefaultNamespace"&gt;
            &lt;import namespace="http://localhost:8080/webservice/Retriever.jws"/&gt;
            &lt;import namespace="http://schemas.xmlsoap.org/soap/encoding/"/&gt;
            &lt;complexType name="Result"&gt;
                &lt;sequence&gt;
                    &lt;element name="time" type="xsd:int"/&gt;
                    &lt;element name="title" nillable="true" type="impl:ArrayOf_xsd_string"/&gt;
                    &lt;element name="url" nillable="true" type="impl:ArrayOf_xsd_string"/&gt;
                    &lt;element name="snippet" nillable="true" type="impl:ArrayOf_xsd_string"/&gt;
                    &lt;element name="position" nillable="true" type="impl:ArrayOf_xsd_int"/&gt;
                &lt;/sequence&gt;
            &lt;/complexType&gt;
        &lt;/schema&gt;
    &lt;/wsdl:types&gt;
    &lt;wsdl:message name="retrieveResponse"&gt;
        &lt;wsdl:part name="retrieveReturn" type="tns1:Result"/&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="retrieveRequest"&gt;
        &lt;wsdl:part name="query" type="xsd:string"/&gt;
        &lt;wsdl:part name="n" type="xsd:int"/&gt;
        &lt;wsdl:part name="start" type="xsd:int"/&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:portType name="Retriever"&gt;
        &lt;wsdl:operation name="retrieve" parameterOrder="query n start"&gt;
            &lt;wsdl:input message="impl:retrieveRequest" name="retrieveRequest"/&gt;
            &lt;wsdl:output message="impl:retrieveResponse" name="retrieveResponse"/&gt;
        &lt;/wsdl:operation&gt;
    &lt;/wsdl:portType&gt;
    &lt;wsdl:binding name="RetrieverSoapBinding" type="impl:Retriever"&gt;
        &lt;wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/&gt;
        &lt;wsdl:operation name="retrieve"&gt;
            &lt;wsdlsoap:operation soapAction=""/&gt;
            &lt;wsdl:input name="retrieveRequest"&gt;
                &lt;wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded"/&gt;
            &lt;/wsdl:input&gt;
            &lt;wsdl:output name="retrieveResponse"&gt;
                &lt;wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/webservice/Retriever.jws" use="encoded"/&gt;
            &lt;/wsdl:output&gt;
        &lt;/wsdl:operation&gt;
    &lt;/wsdl:binding&gt;
    &lt;wsdl:service name="RetrieverService"&gt;
        &lt;wsdl:port binding="impl:RetrieverSoapBinding" name="Retriever"&gt;
            &lt;wsdlsoap:address location="http://localhost:8080/webservice/Retriever.jws"/&gt;
        &lt;/wsdl:port&gt;
    &lt;/wsdl:service&gt;
&lt;/wsdl:definitions&gt;
</code></pre>

<p>How may I call it!?</p>
