Not sure about "List", but if you can live with an "Object[]",
the attached WSDL works (your WSDL hacked so that .Net wsdl
compiles it).

Maybe it even works with "List", give it try, you never know.
In any case you'll get an "object[]" on the .Net side.

Why this WSDL works and not the one generated by java2wsdl,
I leave to the experts to analyze... The bottom line of the
typedef is the same (an array of anyType). It's either a bug
in .Net, or in the generated WSDL (or perhaps something in
between?)...

-- Oliver
<?xml version="1.0" encoding="UTF-8"?>

      <wsdl:definitions targetNamespace="http://domain.forwardvue.com";
      xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
      xmlns:xsd="http://www.w3.org/2001/XMLSchema";
      xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
      xmlns:intf="http://domain.forwardvue.com";
      xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
      xmlns:impl="http://domain.forwardvue.com-impl";
      xmlns="http://schemas.xmlsoap.org/wsdl/";>

       <types>

<!--
Replaced this typedef (SOAP-ENC:Array) with "ArrayOf_xsd_anyType",
and the references to "SOAP-ENC:Array" with "intf:ArrayOf_xsd_anyType":
        <schema xmlns="http://www.w3.org/2001/XMLSchema";
      targetNamespace="http://schemas.xmlsoap.org/soap/encoding/";>
         <element name="Array" nillable="true" type="SOAP-ENC:Array"/>
        </schema>
-->

<schema xmlns="http://www.w3.org/2001/XMLSchema"; 
targetNamespace="http://domain.forwardvue.com";>
<complexType name="ArrayOf_xsd_anyType">
<complexContent>
<restriction base="SOAP-ENC:Array">
<attribute ref="SOAP-ENC:arrayType" wsdl:arrayType="xsd:anyType[]"/>
</restriction>
</complexContent>
</complexType>
<element name="ArrayOf_xsd_anyType" nillable="true" type="intf:ArrayOf_xsd_anyType"/>
</schema>

       </types>

       

         <wsdl:message name="setFooRequest">

       

            <wsdl:part name="arrayList" type="intf:ArrayOf_xsd_anyType"/>

       

         </wsdl:message>

       

         <wsdl:message name="getFooRequest">

       

         </wsdl:message>

       

         <wsdl:message name="setFooResponse">

       

         </wsdl:message>

       

         <wsdl:message name="getFooResponse">

       

            <wsdl:part name="return" type="intf:ArrayOf_xsd_anyType"/>

       

         </wsdl:message>

       

         <wsdl:message name="TestResponse">

       

         </wsdl:message>

       

         <wsdl:message name="TestRequest">

            <wsdl:part name="arrayList" type="intf:ArrayOf_xsd_anyType"/>
       

         </wsdl:message>

       

         <wsdl:portType name="Test">

       

            <wsdl:operation name="Test">

       

               <wsdl:input message="intf:TestRequest"/>

       

               <wsdl:output message="intf:TestResponse"/>

       

            </wsdl:operation>

       

            <wsdl:operation name="setFoo" parameterOrder="arrayList">

       

               <wsdl:input message="intf:setFooRequest"/>

       

               <wsdl:output message="intf:setFooResponse"/>

       

            </wsdl:operation>

       

            <wsdl:operation name="getFoo">

       

               <wsdl:input message="intf:getFooRequest"/>

       

               <wsdl:output message="intf:getFooResponse"/>

       

            </wsdl:operation>

       

         </wsdl:portType>

       

         <wsdl:binding name="ContractVueSoapBinding" type="intf:Test">

       

            <wsdlsoap:binding style="rpc"
      transport="http://schemas.xmlsoap.org/soap/http"/>

       

            <wsdl:operation name="Test">

       

               <wsdlsoap:operation soapAction=""/>

       

               <wsdl:input>

       

                  <wsdlsoap:body use="encoded"
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      namespace="http://domain.forwardvue.com"/>

       

               </wsdl:input>

       

               <wsdl:output>

       

                  <wsdlsoap:body use="encoded"
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      namespace="http://domain.forwardvue.com"/>

       

               </wsdl:output>

       

            </wsdl:operation>

       

            <wsdl:operation name="setFoo">

       

               <wsdlsoap:operation soapAction=""/>

       

               <wsdl:input>

       

                  <wsdlsoap:body use="encoded"
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      namespace="http://domain.forwardvue.com"/>

       

               </wsdl:input>

       

               <wsdl:output>

       

                  <wsdlsoap:body use="encoded"
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      namespace="http://domain.forwardvue.com"/>

       

               </wsdl:output>

       

            </wsdl:operation>

       

            <wsdl:operation name="getFoo">

       

               <wsdlsoap:operation soapAction=""/>

       

               <wsdl:input>

       

                  <wsdlsoap:body use="encoded"
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      namespace="http://domain.forwardvue.com"/>

       

               </wsdl:input>

       

               <wsdl:output>

       

                  <wsdlsoap:body use="encoded"
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      namespace="http://domain.forwardvue.com"/>

       

               </wsdl:output>

       

            </wsdl:operation>

       

         </wsdl:binding>

       

         <wsdl:service name="TestService">

       

            <wsdl:port name="ContractVue"
      binding="intf:ContractVueSoapBinding">

       

               <wsdlsoap:address
      location="http://localhost:8080/axis/services/ContractVue"/>

       

            </wsdl:port>

       

         </wsdl:service>

       

      </wsdl:definitions>
      

Reply via email to