You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Edward Gemar <eg...@forwardvue.com> on 2002/04/02 22:41:25 UTC

Even dirt simple interoperability won't work...please help!

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 web services and axis completely.
This is very frustrating because it would be the perfect fit for our
app.if it would work.
 
            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