Hi all,

            I am getting very frustrated trying to get my axis web service that returns an array to interoperate with a .net client.  I am relatively new to this so I hope that I am missing something obvious.  I haven’t been able to generate the csharp proxies for my service. When I attempt to generate the proxies (on the axis generated WSDL) I get the following error.  Below I have listed the wsdl.exe error, my dirt simple test case and the axis generated wsdl.  Someone please help!  I’m at my wits end and am about to give up on axis completely.  My colleague has this working with GLUE, but I would rather use axis if possible.  This is very frustrating because it would be the perfect fit for our app…if it would work.  Any help would be greatly appreciated.

 

            Thanks!

 

            Edward

 

Note:  Axis generates the same wsdl for this service on the SOAP 1.1 and SOAP 1.2 compatibility modes.

 

 

 

 

WSDL.exe error message:

 

Schema validation warning: Type 'http://schemas.xmlsoap.org/soap/encoding/:Array

' is not declared.

 

Warning: Schema could not be validated. Class generation may fail or may produce

 incorrect results.

 

Error: Unable to import binding 'ContractVueSoapBinding' from namespace 'http://

domain.forwardvue.com'.

  - Unable to import operation 'setFoo'.

  - The datatype 'Array' is missing.

 

 

 

Java Class:

 

package com.forwardvue.domain;

 

import java.util.*;

 

public class Test implements java.io.Serializable

{

            public ArrayList foo;

 

            public void Test(){

                        foo=null;

            }

 

            public void setFoo(ArrayList arrayList) {

                        foo = arrayList;

            }

 

            public ArrayList getFoo(){

                        return foo;

            }

}

 

 

 

Axis Generated WSDL:

 

<?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>

  <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>

 </types>

 

   <wsdl:message name="setFooRequest">

 

      <wsdl:part name="arrayList" type="SOAP-ENC:Array"/>

 

   </wsdl:message>

 

   <wsdl:message name="getFooRequest">

 

   </wsdl:message>

 

   <wsdl:message name="setFooResponse">

 

   </wsdl:message>

 

   <wsdl:message name="getFooResponse">

 

      <wsdl:part name="return" type="SOAP-ENC:Array"/>

 

   </wsdl:message>

 

   <wsdl:message name="TestResponse">

 

   </wsdl:message>

 

   <wsdl:message name="TestRequest">

 

   </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>

 

 

 

Edward Gemar

ForwardVue Technologies, Inc.

Austin, TX

Vox: 512-482-5126

Fax: 512-651-3209

 

Reply via email to