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. Vox: 512-482-5126 Fax: 512-651-3209 |