H
huberfl
Hello,
I want to create a client for a web service and used the web services
toolkit to generate the proxy classes. When I am now calling the
service's operation, I receive a runtime exception, thrown by the
inititalize function of the web service class (clsws_...).
The exception stack is like this:
runtimeexception (80004002)
WSDLOperation:Initialization of a SoaPMapper for operation myOperation
failed
HRESULT=0x80004002: No such interface supported
- WSDLOperation:Initilizing of the input message failed for operation
myOperation
HRESULT=0x80004002: No such interface supported
- WSDLPort:An operation for port myPort could not be initialized
HRESULT=...
-WSDLPort:Analyzing the binding information for port myPort failed
HRESULT=...
- WSDLService:Init of the port for service myService failed
HRESULT=...
- WSDLReader: Analyzing the WSDL file failed
HRESULT=...
The service runs on a server, which I actually cannot access because it
is behind a firewall. But I want to test the data sent with a trace
tool before implementing it at the users' PCs.
The WSDL look like this:
<wsdl:definitions name="WebService" targetNamespace="urn:WebService"
xmlns:impl="urn:WebService"
xmlns:intf="urn:WebService"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns2="http://my.server.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:WebService">
<import namespace="http://my.server.com"/>
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"
schemaLocation="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="ArrayOf_tns2_Value">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="tns2:Value[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="ArrayOf_tns2_person">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="tns2erson[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="ArrayOf_tns2_Team">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="tns2:Team[]"/>
</restriction>
</complexContent>
</complexType>
</schema>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://my.server.com">
<import namespace="urn:WebService"/>
<complexType name="Value">
<sequence>
<element name="ce" type="xsd:int"/>
<element name="pfe" type="xsd:int"/>
<element name="rt" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
<complexType name="Person">
<sequence>
<element name="cds" nillable="true"
type="xsd:string"/>
<element name="cdsMonthAvg" nillable="true"
type="xsd:string"/>
<element name="values" nillable="true"
type="impl:ArrayOf_tns2_Value"/>
<element name="pnr" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
<complexType name="Team">
<sequence>
<element name="evd" nillable="true"
type="xsd:string"/>
<element name="values" nillable="true"
type="impl:ArrayOf_tns2_Values"/>
</sequence>
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="uploadValuesRequest">
<wsdlart name="in0" type="xsd:string"/>
<wsdlart name="in1" type="impl:ArrayOf_tns2_person"/>
<wsdlart name="in2" type="impl:ArrayOf_tns2_Team"/>
</wsdl:message>
<wsdl:message name="uploadValuesResponse">
</wsdl:message>
<wsdlortType name="WebService">
<wsdlperation name="uploadValues" parameterOrder="in0 in1 in2">
<wsdl:input name="uploadValuesRequest"
message="impl:uploadValuesRequest"/>
<wsdlutput name="uploadValuesResponse"
message="impl:uploadValuesResponse"/>
</wsdlperation>
</wsdlortType>
<wsdl:binding name="WebServiceSoapBinding" type="impl:WebService">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdlperation name="uploadValues">
<wsdlsoapperation soapAction=""/>
<wsdl:input name="uploadValuesRequest">
<wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:WebService"/>
</wsdl:input>
<wsdlutput name="uploadValuesResponse">
<wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:WebService"/>
</wsdlutput>
</wsdlperation>
</wsdl:binding>
<wsdl:service name="WebServiceService">
<wsdlort name="WebService" binding="impl:WebServiceSoapBinding">
<wsdlsoap:address
location="http://localhost:8080/webservice.wsdl"/>
</wsdlort>
</wsdl:service>
</wsdl:definitions>
Thanks for your help,
Florian
I want to create a client for a web service and used the web services
toolkit to generate the proxy classes. When I am now calling the
service's operation, I receive a runtime exception, thrown by the
inititalize function of the web service class (clsws_...).
The exception stack is like this:
runtimeexception (80004002)
WSDLOperation:Initialization of a SoaPMapper for operation myOperation
failed
HRESULT=0x80004002: No such interface supported
- WSDLOperation:Initilizing of the input message failed for operation
myOperation
HRESULT=0x80004002: No such interface supported
- WSDLPort:An operation for port myPort could not be initialized
HRESULT=...
-WSDLPort:Analyzing the binding information for port myPort failed
HRESULT=...
- WSDLService:Init of the port for service myService failed
HRESULT=...
- WSDLReader: Analyzing the WSDL file failed
HRESULT=...
The service runs on a server, which I actually cannot access because it
is behind a firewall. But I want to test the data sent with a trace
tool before implementing it at the users' PCs.
The WSDL look like this:
<wsdl:definitions name="WebService" targetNamespace="urn:WebService"
xmlns:impl="urn:WebService"
xmlns:intf="urn:WebService"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns2="http://my.server.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:WebService">
<import namespace="http://my.server.com"/>
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"
schemaLocation="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="ArrayOf_tns2_Value">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="tns2:Value[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="ArrayOf_tns2_person">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="tns2erson[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="ArrayOf_tns2_Team">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="tns2:Team[]"/>
</restriction>
</complexContent>
</complexType>
</schema>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://my.server.com">
<import namespace="urn:WebService"/>
<complexType name="Value">
<sequence>
<element name="ce" type="xsd:int"/>
<element name="pfe" type="xsd:int"/>
<element name="rt" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
<complexType name="Person">
<sequence>
<element name="cds" nillable="true"
type="xsd:string"/>
<element name="cdsMonthAvg" nillable="true"
type="xsd:string"/>
<element name="values" nillable="true"
type="impl:ArrayOf_tns2_Value"/>
<element name="pnr" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
<complexType name="Team">
<sequence>
<element name="evd" nillable="true"
type="xsd:string"/>
<element name="values" nillable="true"
type="impl:ArrayOf_tns2_Values"/>
</sequence>
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="uploadValuesRequest">
<wsdlart name="in0" type="xsd:string"/>
<wsdlart name="in1" type="impl:ArrayOf_tns2_person"/>
<wsdlart name="in2" type="impl:ArrayOf_tns2_Team"/>
</wsdl:message>
<wsdl:message name="uploadValuesResponse">
</wsdl:message>
<wsdlortType name="WebService">
<wsdlperation name="uploadValues" parameterOrder="in0 in1 in2">
<wsdl:input name="uploadValuesRequest"
message="impl:uploadValuesRequest"/>
<wsdlutput name="uploadValuesResponse"
message="impl:uploadValuesResponse"/>
</wsdlperation>
</wsdlortType>
<wsdl:binding name="WebServiceSoapBinding" type="impl:WebService">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdlperation name="uploadValues">
<wsdlsoapperation soapAction=""/>
<wsdl:input name="uploadValuesRequest">
<wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:WebService"/>
</wsdl:input>
<wsdlutput name="uploadValuesResponse">
<wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:WebService"/>
</wsdlutput>
</wsdlperation>
</wsdl:binding>
<wsdl:service name="WebServiceService">
<wsdlort name="WebService" binding="impl:WebServiceSoapBinding">
<wsdlsoap:address
location="http://localhost:8080/webservice.wsdl"/>
</wsdlort>
</wsdl:service>
</wsdl:definitions>
Thanks for your help,
Florian