You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@xml.apache.org by Nicholas Quaine <qu...@jpmorgan.com> on 2001/02/12 17:09:46 UTC

VB runtime err 0x800A157C (client message could not be sent to its destination)

All,

I have a VB client using MSSoap toolkit 2.0 (NT4) and I have Apache Soap 2.1 on
the server
side. I have a wsdl file describing a very simple service (it doubles a supplied
 integer).

Client side, I receive the error "client message cound not be sent to its
destination 0x800A157C".

I put a tcp/ip tunnel on to view the soap messages and see that the soap request
 is well
formed and sent OK. I see that the server understands the request, executes the
service
method correctly and generates/sends a response packet. The error happens when
the client
receives this response packet.

Suggested reason for this error on the microsoft soap discussion group (feb 1,
Roger Wolter)
was that the response packet had a content-type other than text/xml. But my
tunnel shows me
that my response packet is correctly marked text/xml.

Below are the wsdl file, request packet and response packet

I have a suspicion that the xsi:type in the response may be the culprit as it
seems to be
the source of many apache-ms interoperability problems

thanks for any help anyone can provide
Nick Quaine

---------------------------------WSDL----------------------------

<?xml version="1.0" encoding="UTF-8"?>
<definitions name="InstrumentServices"
targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
 xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
 xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <schema targetNamespace="urn:InstrumentServices"
     xmlns="http://www.w3.org/1999/XMLSchema">
    </schema>
  </types>
  <message name="doublerRequest">
    <part name="int" type="int"/>
  </message>
  <message name="doublerResponse">
    <part name="return" type="int"/>
  </message>
  <portType
   name="InstrumentServicesPortType">
    <operation name="doubler">
      <input message="tns:doublerRequest"/>
      <output message="tns:doublerResponse"/>
    </operation>
  </portType>
  <binding name="InstrumentServicesSoapBinding"
type="tns:InstrumentServicesPortType">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="doubler">
      <soap:operation soapAction="urn:InstrumentServices#doubler"/>
      <input>
        <soap:body use="encoded"
           namespace="urn:InstrumentServices"
           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
        <soap:body use="encoded"
           namespace="urn:InstrumentServices"
           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </output>
    </operation>
  </binding>
  <service name="InstrumentServices">
    <port name="InstrumentServicesPortType"
binding="tns:InstrumentServicesSoapBinding">
      <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
    </port>
  </service>
</definitions>

-----------------------------Request-----------------------------------

POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
169.28.20.20SOAPAction:

"urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
encoding="UTF-8"

standalone="no"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"

xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
    <m:doubler mlns:m="urn:InstrumentServices">
      <int>389</int>
    </m:doubler>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

-------------------------------Response-----------------------------------

HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:

JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soap"Servlet-Engine:

Tomcat

Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
java.vendor=Sun

Microsystems Inc.)Set-Cookie:
JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:

text/xml; charset=utf-8Content-Length: 464Content-Language: en
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"

xmlns:xsd="http://www.w3.org/1999/XMLSchema">
<SOAP-ENV:Body>
  <ns1:doublerResponse
   xmlns:ns1="urn:InstrumentServices"
   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <return xsi:type="xsd:int">778</return>
  </ns1:doublerResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

----------------------------------------------------------------------------



This communication is for informational purposes only.  It is not intended as
an offer or solicitation for the purchase or sale of any financial instrument
or as an official confirmation of any transaction. All market prices, data
and other information are not warranted as to completeness or accuracy and
are subject to change without notice. Any comments or statements made herein
do not necessarily reflect those of J.P. Morgan Chase & Co. Incorporated, its
subsidiaries and affiliates.


Re: VB runtime err 0x800A157C (client message could not be sent to its destination)

Posted by Simon Fell <so...@zaks.demon.co.uk>.
the response has a content-type of

text/xml; charset=utf-8

which, whilst allowed according to the spec, is something of an
inter-op nightmare, this is tripping up so many non-apache based
systems.

soap-dev'ers : Are there any plans to change this ?

Cheers
Simon
www.pocketsoap.com

On Mon, 12 Feb 2001 17:09:46 +0100, in soap you wrote:

>All,
>
>I have a VB client using MSSoap toolkit 2.0 (NT4) and I have Apache Soap 2.1 on
>the server
>side. I have a wsdl file describing a very simple service (it doubles a supplied
> integer).
>
>Client side, I receive the error "client message cound not be sent to its
>destination 0x800A157C".
>
>I put a tcp/ip tunnel on to view the soap messages and see that the soap request
> is well
>formed and sent OK. I see that the server understands the request, executes the
>service
>method correctly and generates/sends a response packet. The error happens when
>the client
>receives this response packet.
>
>Suggested reason for this error on the microsoft soap discussion group (feb 1,
>Roger Wolter)
>was that the response packet had a content-type other than text/xml. But my
>tunnel shows me
>that my response packet is correctly marked text/xml.
>
>Below are the wsdl file, request packet and response packet
>
>I have a suspicion that the xsi:type in the response may be the culprit as it
>seems to be
>the source of many apache-ms interoperability problems
>
>thanks for any help anyone can provide
>Nick Quaine
>
>---------------------------------WSDL----------------------------
>
><?xml version="1.0" encoding="UTF-8"?>
><definitions name="InstrumentServices"
>targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
>xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns="http://schemas.xmlsoap.org/wsdl/">
>  <types>
>    <schema targetNamespace="urn:InstrumentServices"
>     xmlns="http://www.w3.org/1999/XMLSchema">
>    </schema>
>  </types>
>  <message name="doublerRequest">
>    <part name="int" type="int"/>
>  </message>
>  <message name="doublerResponse">
>    <part name="return" type="int"/>
>  </message>
>  <portType
>   name="InstrumentServicesPortType">
>    <operation name="doubler">
>      <input message="tns:doublerRequest"/>
>      <output message="tns:doublerResponse"/>
>    </operation>
>  </portType>
>  <binding name="InstrumentServicesSoapBinding"
>type="tns:InstrumentServicesPortType">
>    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
>    <operation name="doubler">
>      <soap:operation soapAction="urn:InstrumentServices#doubler"/>
>      <input>
>        <soap:body use="encoded"
>           namespace="urn:InstrumentServices"
>           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>      </input>
>      <output>
>        <soap:body use="encoded"
>           namespace="urn:InstrumentServices"
>           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>      </output>
>    </operation>
>  </binding>
>  <service name="InstrumentServices">
>    <port name="InstrumentServicesPortType"
>binding="tns:InstrumentServicesSoapBinding">
>      <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
>    </port>
>  </service>
></definitions>
>
>-----------------------------Request-----------------------------------
>
>POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
>169.28.20.20SOAPAction:
>
>"urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
>encoding="UTF-8"
>
>standalone="no"?>
><SOAP-ENV:Envelope
>SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
>xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
><SOAP-ENV:Body>
>    <m:doubler mlns:m="urn:InstrumentServices">
>      <int>389</int>
>    </m:doubler>
>  </SOAP-ENV:Body>
></SOAP-ENV:Envelope>
>
>-------------------------------Response-----------------------------------
>
>HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:
>
>JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soap"Servlet-Engine:
>
>Tomcat
>
>Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
>java.vendor=Sun
>
>Microsystems Inc.)Set-Cookie:
>JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:
>
>text/xml; charset=utf-8Content-Length: 464Content-Language: en
><?xml version='1.0' encoding='UTF-8'?>
><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
>xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
>
>xmlns:xsd="http://www.w3.org/1999/XMLSchema">
><SOAP-ENV:Body>
>  <ns1:doublerResponse
>   xmlns:ns1="urn:InstrumentServices"
>   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>    <return xsi:type="xsd:int">778</return>
>  </ns1:doublerResponse>
></SOAP-ENV:Body>
></SOAP-ENV:Envelope>
>
>----------------------------------------------------------------------------
>
>
>
>This communication is for informational purposes only.  It is not intended as
>an offer or solicitation for the purchase or sale of any financial instrument
>or as an official confirmation of any transaction. All market prices, data
>and other information are not warranted as to completeness or accuracy and
>are subject to change without notice. Any comments or statements made herein
>do not necessarily reflect those of J.P. Morgan Chase & Co. Incorporated, its
>subsidiaries and affiliates.


Re: VB runtime err 0x800A157C (client message could not be sent to its destination)

Posted by Simon Fell <so...@zaks.demon.co.uk>.
the response has a content-type of

text/xml; charset=utf-8

which, whilst allowed according to the spec, is something of an
inter-op nightmare, this is tripping up so many non-apache based
systems.

soap-dev'ers : Are there any plans to change this ?

Cheers
Simon
www.pocketsoap.com

On Mon, 12 Feb 2001 17:09:46 +0100, in soap you wrote:

>All,
>
>I have a VB client using MSSoap toolkit 2.0 (NT4) and I have Apache Soap 2.1 on
>the server
>side. I have a wsdl file describing a very simple service (it doubles a supplied
> integer).
>
>Client side, I receive the error "client message cound not be sent to its
>destination 0x800A157C".
>
>I put a tcp/ip tunnel on to view the soap messages and see that the soap request
> is well
>formed and sent OK. I see that the server understands the request, executes the
>service
>method correctly and generates/sends a response packet. The error happens when
>the client
>receives this response packet.
>
>Suggested reason for this error on the microsoft soap discussion group (feb 1,
>Roger Wolter)
>was that the response packet had a content-type other than text/xml. But my
>tunnel shows me
>that my response packet is correctly marked text/xml.
>
>Below are the wsdl file, request packet and response packet
>
>I have a suspicion that the xsi:type in the response may be the culprit as it
>seems to be
>the source of many apache-ms interoperability problems
>
>thanks for any help anyone can provide
>Nick Quaine
>
>---------------------------------WSDL----------------------------
>
><?xml version="1.0" encoding="UTF-8"?>
><definitions name="InstrumentServices"
>targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
>xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns="http://schemas.xmlsoap.org/wsdl/">
>  <types>
>    <schema targetNamespace="urn:InstrumentServices"
>     xmlns="http://www.w3.org/1999/XMLSchema">
>    </schema>
>  </types>
>  <message name="doublerRequest">
>    <part name="int" type="int"/>
>  </message>
>  <message name="doublerResponse">
>    <part name="return" type="int"/>
>  </message>
>  <portType
>   name="InstrumentServicesPortType">
>    <operation name="doubler">
>      <input message="tns:doublerRequest"/>
>      <output message="tns:doublerResponse"/>
>    </operation>
>  </portType>
>  <binding name="InstrumentServicesSoapBinding"
>type="tns:InstrumentServicesPortType">
>    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
>    <operation name="doubler">
>      <soap:operation soapAction="urn:InstrumentServices#doubler"/>
>      <input>
>        <soap:body use="encoded"
>           namespace="urn:InstrumentServices"
>           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>      </input>
>      <output>
>        <soap:body use="encoded"
>           namespace="urn:InstrumentServices"
>           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>      </output>
>    </operation>
>  </binding>
>  <service name="InstrumentServices">
>    <port name="InstrumentServicesPortType"
>binding="tns:InstrumentServicesSoapBinding">
>      <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
>    </port>
>  </service>
></definitions>
>
>-----------------------------Request-----------------------------------
>
>POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
>169.28.20.20SOAPAction:
>
>"urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
>encoding="UTF-8"
>
>standalone="no"?>
><SOAP-ENV:Envelope
>SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
>xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
><SOAP-ENV:Body>
>    <m:doubler mlns:m="urn:InstrumentServices">
>      <int>389</int>
>    </m:doubler>
>  </SOAP-ENV:Body>
></SOAP-ENV:Envelope>
>
>-------------------------------Response-----------------------------------
>
>HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:
>
>JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soap"Servlet-Engine:
>
>Tomcat
>
>Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
>java.vendor=Sun
>
>Microsystems Inc.)Set-Cookie:
>JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:
>
>text/xml; charset=utf-8Content-Length: 464Content-Language: en
><?xml version='1.0' encoding='UTF-8'?>
><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
>xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
>
>xmlns:xsd="http://www.w3.org/1999/XMLSchema">
><SOAP-ENV:Body>
>  <ns1:doublerResponse
>   xmlns:ns1="urn:InstrumentServices"
>   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>    <return xsi:type="xsd:int">778</return>
>  </ns1:doublerResponse>
></SOAP-ENV:Body>
></SOAP-ENV:Envelope>
>
>----------------------------------------------------------------------------
>
>
>
>This communication is for informational purposes only.  It is not intended as
>an offer or solicitation for the purchase or sale of any financial instrument
>or as an official confirmation of any transaction. All market prices, data
>and other information are not warranted as to completeness or accuracy and
>are subject to change without notice. Any comments or statements made herein
>do not necessarily reflect those of J.P. Morgan Chase & Co. Incorporated, its
>subsidiaries and affiliates.


Re: VB runtime err 0x800A157C (client message could not be sent to its destination)

Posted by Simon Fell <so...@zaks.demon.co.uk>.
the response has a content-type of

text/xml; charset=utf-8

which, whilst allowed according to the spec, is something of an
inter-op nightmare, this is tripping up so many non-apache based
systems.

soap-dev'ers : Are there any plans to change this ?

Cheers
Simon
www.pocketsoap.com

On Mon, 12 Feb 2001 17:09:46 +0100, in soap you wrote:

>All,
>
>I have a VB client using MSSoap toolkit 2.0 (NT4) and I have Apache Soap 2.1 on
>the server
>side. I have a wsdl file describing a very simple service (it doubles a supplied
> integer).
>
>Client side, I receive the error "client message cound not be sent to its
>destination 0x800A157C".
>
>I put a tcp/ip tunnel on to view the soap messages and see that the soap request
> is well
>formed and sent OK. I see that the server understands the request, executes the
>service
>method correctly and generates/sends a response packet. The error happens when
>the client
>receives this response packet.
>
>Suggested reason for this error on the microsoft soap discussion group (feb 1,
>Roger Wolter)
>was that the response packet had a content-type other than text/xml. But my
>tunnel shows me
>that my response packet is correctly marked text/xml.
>
>Below are the wsdl file, request packet and response packet
>
>I have a suspicion that the xsi:type in the response may be the culprit as it
>seems to be
>the source of many apache-ms interoperability problems
>
>thanks for any help anyone can provide
>Nick Quaine
>
>---------------------------------WSDL----------------------------
>
><?xml version="1.0" encoding="UTF-8"?>
><definitions name="InstrumentServices"
>targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
>xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns="http://schemas.xmlsoap.org/wsdl/">
>  <types>
>    <schema targetNamespace="urn:InstrumentServices"
>     xmlns="http://www.w3.org/1999/XMLSchema">
>    </schema>
>  </types>
>  <message name="doublerRequest">
>    <part name="int" type="int"/>
>  </message>
>  <message name="doublerResponse">
>    <part name="return" type="int"/>
>  </message>
>  <portType
>   name="InstrumentServicesPortType">
>    <operation name="doubler">
>      <input message="tns:doublerRequest"/>
>      <output message="tns:doublerResponse"/>
>    </operation>
>  </portType>
>  <binding name="InstrumentServicesSoapBinding"
>type="tns:InstrumentServicesPortType">
>    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
>    <operation name="doubler">
>      <soap:operation soapAction="urn:InstrumentServices#doubler"/>
>      <input>
>        <soap:body use="encoded"
>           namespace="urn:InstrumentServices"
>           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>      </input>
>      <output>
>        <soap:body use="encoded"
>           namespace="urn:InstrumentServices"
>           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>      </output>
>    </operation>
>  </binding>
>  <service name="InstrumentServices">
>    <port name="InstrumentServicesPortType"
>binding="tns:InstrumentServicesSoapBinding">
>      <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
>    </port>
>  </service>
></definitions>
>
>-----------------------------Request-----------------------------------
>
>POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
>169.28.20.20SOAPAction:
>
>"urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
>encoding="UTF-8"
>
>standalone="no"?>
><SOAP-ENV:Envelope
>SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
>xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
><SOAP-ENV:Body>
>    <m:doubler mlns:m="urn:InstrumentServices">
>      <int>389</int>
>    </m:doubler>
>  </SOAP-ENV:Body>
></SOAP-ENV:Envelope>
>
>-------------------------------Response-----------------------------------
>
>HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:
>
>JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soap"Servlet-Engine:
>
>Tomcat
>
>Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
>java.vendor=Sun
>
>Microsystems Inc.)Set-Cookie:
>JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:
>
>text/xml; charset=utf-8Content-Length: 464Content-Language: en
><?xml version='1.0' encoding='UTF-8'?>
><SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
>xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
>
>xmlns:xsd="http://www.w3.org/1999/XMLSchema">
><SOAP-ENV:Body>
>  <ns1:doublerResponse
>   xmlns:ns1="urn:InstrumentServices"
>   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>    <return xsi:type="xsd:int">778</return>
>  </ns1:doublerResponse>
></SOAP-ENV:Body>
></SOAP-ENV:Envelope>
>
>----------------------------------------------------------------------------
>
>
>
>This communication is for informational purposes only.  It is not intended as
>an offer or solicitation for the purchase or sale of any financial instrument
>or as an official confirmation of any transaction. All market prices, data
>and other information are not warranted as to completeness or accuracy and
>are subject to change without notice. Any comments or statements made herein
>do not necessarily reflect those of J.P. Morgan Chase & Co. Incorporated, its
>subsidiaries and affiliates.


RE: VB runtime err 0x800A157C (client message could not be sent to its destination)

Posted by Herve Shu <sh...@esker.fr>.
Hello Nick,

MS Soap Toolkit 2.0 uses HTTPLibConnector as default connector for clients
running NT or Windows 2000. I think there is a bug in this connector to
parse "text/xml; charset=utf-8" content type.

To solve this problem, you can use XMLHTTPConnector which works correctly
with Apache SOAP. But it implies the use of Low Level API of MS Toolkit 2.

MS Toolkit 2 documentation says "The SOAP Toolkit 2.0 can be configured to
use additional SoapConnector implementations. See the documentation for the
SoapConnectorFactory object for more information", perhaps it is the way to
select preferred connector without too much modifying actual code using High
Level API. But nowhere I could found the documentation for
SoapConnectorFactory.

Herve Shu


> -----Message d'origine-----
> De : Nicholas Quaine [mailto:quaine_nicholas@jpmorgan.com]
> Envoye : lundi 12 fevrier 2001 17:10
> A : soap-user@xml.apache.org
> Objet : VB runtime err 0x800A157C (client message could not be sent to
> its destination)
>
>
> All,
>
> I have a VB client using MSSoap toolkit 2.0 (NT4) and I have
> Apache Soap 2.1 on
> the server
> side. I have a wsdl file describing a very simple service (it
> doubles a supplied
>  integer).
>
> Client side, I receive the error "client message cound not be sent to its
> destination 0x800A157C".
>
> I put a tcp/ip tunnel on to view the soap messages and see that
> the soap request
>  is well
> formed and sent OK. I see that the server understands the
> request, executes the
> service
> method correctly and generates/sends a response packet. The error
> happens when
> the client
> receives this response packet.
>
> Suggested reason for this error on the microsoft soap discussion
> group (feb 1,
> Roger Wolter)
> was that the response packet had a content-type other than
> text/xml. But my
> tunnel shows me
> that my response packet is correctly marked text/xml.
>
> Below are the wsdl file, request packet and response packet
>
> I have a suspicion that the xsi:type in the response may be the
> culprit as it
> seems to be
> the source of many apache-ms interoperability problems
>
> thanks for any help anyone can provide
> Nick Quaine
>
> ---------------------------------WSDL----------------------------
>
> <?xml version="1.0" encoding="UTF-8"?>
> <definitions name="InstrumentServices"
> targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentSe
> rvices.wsdl"
> xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>  xmlns="http://schemas.xmlsoap.org/wsdl/">
>   <types>
>     <schema targetNamespace="urn:InstrumentServices"
>      xmlns="http://www.w3.org/1999/XMLSchema">
>     </schema>
>   </types>
>   <message name="doublerRequest">
>     <part name="int" type="int"/>
>   </message>
>   <message name="doublerResponse">
>     <part name="return" type="int"/>
>   </message>
>   <portType
>    name="InstrumentServicesPortType">
>     <operation name="doubler">
>       <input message="tns:doublerRequest"/>
>       <output message="tns:doublerResponse"/>
>     </operation>
>   </portType>
>   <binding name="InstrumentServicesSoapBinding"
> type="tns:InstrumentServicesPortType">
>     <soap:binding style="rpc"
> transport="http://schemas.xmlsoap.org/soap/http"/>
>     <operation name="doubler">
>       <soap:operation soapAction="urn:InstrumentServices#doubler"/>
>       <input>
>         <soap:body use="encoded"
>            namespace="urn:InstrumentServices"
>            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>       </input>
>       <output>
>         <soap:body use="encoded"
>            namespace="urn:InstrumentServices"
>            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>       </output>
>     </operation>
>   </binding>
>   <service name="InstrumentServices">
>     <port name="InstrumentServicesPortType"
> binding="tns:InstrumentServicesSoapBinding">
>       <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
>     </port>
>   </service>
> </definitions>
>
> -----------------------------Request-----------------------------------
>
> POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
> 169.28.20.20SOAPAction:
>
> "urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
> encoding="UTF-8"
>
> standalone="no"?>
> <SOAP-ENV:Envelope
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> <SOAP-ENV:Body>
>     <m:doubler mlns:m="urn:InstrumentServices">
>       <int>389</int>
>     </m:doubler>
>   </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> -------------------------------Response-----------------------------------
>
> HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:
>
> JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soa
> p"Servlet-Engine:
>
> Tomcat
>
> Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
> java.vendor=Sun
>
> Microsystems Inc.)Set-Cookie:
> JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:
>
> text/xml; charset=utf-8Content-Length: 464Content-Language: en
> <?xml version='1.0' encoding='UTF-8'?>
> <SOAP-ENV:Envelope
>  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
> xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
>
> xmlns:xsd="http://www.w3.org/1999/XMLSchema">
> <SOAP-ENV:Body>
>   <ns1:doublerResponse
>    xmlns:ns1="urn:InstrumentServices"
>    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>     <return xsi:type="xsd:int">778</return>
>   </ns1:doublerResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> ------------------------------------------------------------------
> ----------
>
>
>
> This communication is for informational purposes only.  It is not
> intended as
> an offer or solicitation for the purchase or sale of any
> financial instrument
> or as an official confirmation of any transaction. All market prices, data
> and other information are not warranted as to completeness or accuracy and
> are subject to change without notice. Any comments or statements
> made herein
> do not necessarily reflect those of J.P. Morgan Chase & Co.
> Incorporated, its
> subsidiaries and affiliates.


RE: VB runtime err 0x800A157C (client message could not be sent to its destination)

Posted by Herve Shu <sh...@esker.fr>.
Hello Nick,

MS Soap Toolkit 2.0 uses HTTPLibConnector as default connector for clients
running NT or Windows 2000. I think there is a bug in this connector to
parse "text/xml; charset=utf-8" content type.

To solve this problem, you can use XMLHTTPConnector which works correctly
with Apache SOAP. But it implies the use of Low Level API of MS Toolkit 2.

MS Toolkit 2 documentation says "The SOAP Toolkit 2.0 can be configured to
use additional SoapConnector implementations. See the documentation for the
SoapConnectorFactory object for more information", perhaps it is the way to
select preferred connector without too much modifying actual code using High
Level API. But nowhere I could found the documentation for
SoapConnectorFactory.

Herve Shu


> -----Message d'origine-----
> De : Nicholas Quaine [mailto:quaine_nicholas@jpmorgan.com]
> Envoye : lundi 12 fevrier 2001 17:10
> A : soap-user@xml.apache.org
> Objet : VB runtime err 0x800A157C (client message could not be sent to
> its destination)
>
>
> All,
>
> I have a VB client using MSSoap toolkit 2.0 (NT4) and I have
> Apache Soap 2.1 on
> the server
> side. I have a wsdl file describing a very simple service (it
> doubles a supplied
>  integer).
>
> Client side, I receive the error "client message cound not be sent to its
> destination 0x800A157C".
>
> I put a tcp/ip tunnel on to view the soap messages and see that
> the soap request
>  is well
> formed and sent OK. I see that the server understands the
> request, executes the
> service
> method correctly and generates/sends a response packet. The error
> happens when
> the client
> receives this response packet.
>
> Suggested reason for this error on the microsoft soap discussion
> group (feb 1,
> Roger Wolter)
> was that the response packet had a content-type other than
> text/xml. But my
> tunnel shows me
> that my response packet is correctly marked text/xml.
>
> Below are the wsdl file, request packet and response packet
>
> I have a suspicion that the xsi:type in the response may be the
> culprit as it
> seems to be
> the source of many apache-ms interoperability problems
>
> thanks for any help anyone can provide
> Nick Quaine
>
> ---------------------------------WSDL----------------------------
>
> <?xml version="1.0" encoding="UTF-8"?>
> <definitions name="InstrumentServices"
> targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentSe
> rvices.wsdl"
> xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>  xmlns="http://schemas.xmlsoap.org/wsdl/">
>   <types>
>     <schema targetNamespace="urn:InstrumentServices"
>      xmlns="http://www.w3.org/1999/XMLSchema">
>     </schema>
>   </types>
>   <message name="doublerRequest">
>     <part name="int" type="int"/>
>   </message>
>   <message name="doublerResponse">
>     <part name="return" type="int"/>
>   </message>
>   <portType
>    name="InstrumentServicesPortType">
>     <operation name="doubler">
>       <input message="tns:doublerRequest"/>
>       <output message="tns:doublerResponse"/>
>     </operation>
>   </portType>
>   <binding name="InstrumentServicesSoapBinding"
> type="tns:InstrumentServicesPortType">
>     <soap:binding style="rpc"
> transport="http://schemas.xmlsoap.org/soap/http"/>
>     <operation name="doubler">
>       <soap:operation soapAction="urn:InstrumentServices#doubler"/>
>       <input>
>         <soap:body use="encoded"
>            namespace="urn:InstrumentServices"
>            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>       </input>
>       <output>
>         <soap:body use="encoded"
>            namespace="urn:InstrumentServices"
>            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>       </output>
>     </operation>
>   </binding>
>   <service name="InstrumentServices">
>     <port name="InstrumentServicesPortType"
> binding="tns:InstrumentServicesSoapBinding">
>       <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
>     </port>
>   </service>
> </definitions>
>
> -----------------------------Request-----------------------------------
>
> POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
> 169.28.20.20SOAPAction:
>
> "urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
> encoding="UTF-8"
>
> standalone="no"?>
> <SOAP-ENV:Envelope
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> <SOAP-ENV:Body>
>     <m:doubler mlns:m="urn:InstrumentServices">
>       <int>389</int>
>     </m:doubler>
>   </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> -------------------------------Response-----------------------------------
>
> HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:
>
> JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soa
> p"Servlet-Engine:
>
> Tomcat
>
> Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
> java.vendor=Sun
>
> Microsystems Inc.)Set-Cookie:
> JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:
>
> text/xml; charset=utf-8Content-Length: 464Content-Language: en
> <?xml version='1.0' encoding='UTF-8'?>
> <SOAP-ENV:Envelope
>  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
> xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
>
> xmlns:xsd="http://www.w3.org/1999/XMLSchema">
> <SOAP-ENV:Body>
>   <ns1:doublerResponse
>    xmlns:ns1="urn:InstrumentServices"
>    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>     <return xsi:type="xsd:int">778</return>
>   </ns1:doublerResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> ------------------------------------------------------------------
> ----------
>
>
>
> This communication is for informational purposes only.  It is not
> intended as
> an offer or solicitation for the purchase or sale of any
> financial instrument
> or as an official confirmation of any transaction. All market prices, data
> and other information are not warranted as to completeness or accuracy and
> are subject to change without notice. Any comments or statements
> made herein
> do not necessarily reflect those of J.P. Morgan Chase & Co.
> Incorporated, its
> subsidiaries and affiliates.


RE: VB runtime err 0x800A157C (client message could not be sent to its destination)

Posted by Herve Shu <sh...@esker.fr>.
Hello Nick,

MS Soap Toolkit 2.0 uses HTTPLibConnector as default connector for clients
running NT or Windows 2000. I think there is a bug in this connector to
parse "text/xml; charset=utf-8" content type.

To solve this problem, you can use XMLHTTPConnector which works correctly
with Apache SOAP. But it implies the use of Low Level API of MS Toolkit 2.

MS Toolkit 2 documentation says "The SOAP Toolkit 2.0 can be configured to
use additional SoapConnector implementations. See the documentation for the
SoapConnectorFactory object for more information", perhaps it is the way to
select preferred connector without too much modifying actual code using High
Level API. But nowhere I could found the documentation for
SoapConnectorFactory.

Herve Shu


> -----Message d'origine-----
> De : Nicholas Quaine [mailto:quaine_nicholas@jpmorgan.com]
> Envoye : lundi 12 fevrier 2001 17:10
> A : soap-user@xml.apache.org
> Objet : VB runtime err 0x800A157C (client message could not be sent to
> its destination)
>
>
> All,
>
> I have a VB client using MSSoap toolkit 2.0 (NT4) and I have
> Apache Soap 2.1 on
> the server
> side. I have a wsdl file describing a very simple service (it
> doubles a supplied
>  integer).
>
> Client side, I receive the error "client message cound not be sent to its
> destination 0x800A157C".
>
> I put a tcp/ip tunnel on to view the soap messages and see that
> the soap request
>  is well
> formed and sent OK. I see that the server understands the
> request, executes the
> service
> method correctly and generates/sends a response packet. The error
> happens when
> the client
> receives this response packet.
>
> Suggested reason for this error on the microsoft soap discussion
> group (feb 1,
> Roger Wolter)
> was that the response packet had a content-type other than
> text/xml. But my
> tunnel shows me
> that my response packet is correctly marked text/xml.
>
> Below are the wsdl file, request packet and response packet
>
> I have a suspicion that the xsi:type in the response may be the
> culprit as it
> seems to be
> the source of many apache-ms interoperability problems
>
> thanks for any help anyone can provide
> Nick Quaine
>
> ---------------------------------WSDL----------------------------
>
> <?xml version="1.0" encoding="UTF-8"?>
> <definitions name="InstrumentServices"
> targetNamespace="http://myhost:5555/openservices/wsdl/InstrumentSe
> rvices.wsdl"
> xmlns:tns="http://myhost:5555/openservices/wsdl/InstrumentServices.wsdl"
>  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>  xmlns="http://schemas.xmlsoap.org/wsdl/">
>   <types>
>     <schema targetNamespace="urn:InstrumentServices"
>      xmlns="http://www.w3.org/1999/XMLSchema">
>     </schema>
>   </types>
>   <message name="doublerRequest">
>     <part name="int" type="int"/>
>   </message>
>   <message name="doublerResponse">
>     <part name="return" type="int"/>
>   </message>
>   <portType
>    name="InstrumentServicesPortType">
>     <operation name="doubler">
>       <input message="tns:doublerRequest"/>
>       <output message="tns:doublerResponse"/>
>     </operation>
>   </portType>
>   <binding name="InstrumentServicesSoapBinding"
> type="tns:InstrumentServicesPortType">
>     <soap:binding style="rpc"
> transport="http://schemas.xmlsoap.org/soap/http"/>
>     <operation name="doubler">
>       <soap:operation soapAction="urn:InstrumentServices#doubler"/>
>       <input>
>         <soap:body use="encoded"
>            namespace="urn:InstrumentServices"
>            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>       </input>
>       <output>
>         <soap:body use="encoded"
>            namespace="urn:InstrumentServices"
>            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>       </output>
>     </operation>
>   </binding>
>   <service name="InstrumentServices">
>     <port name="InstrumentServicesPortType"
> binding="tns:InstrumentServicesSoapBinding">
>       <soap:address location="http://myhost:8765/soap/servlet/rpcrouter"/>
>     </port>
>   </service>
> </definitions>
>
> -----------------------------Request-----------------------------------
>
> POST /soap/servlet/rpcrouter HTTP/1.1Content-Type: text/xmlHost:
> 169.28.20.20SOAPAction:
>
> "urn:InstrumentServices#doubler"Content-Length: 320<?xml version="1.0"
> encoding="UTF-8"
>
> standalone="no"?>
> <SOAP-ENV:Envelope
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> <SOAP-ENV:Body>
>     <m:doubler mlns:m="urn:InstrumentServices">
>       <int>389</int>
>     </m:doubler>
>   </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> -------------------------------Response-----------------------------------
>
> HTTP/1.0 200 OKDate: Mon, 12 Feb 2001 14:57:28 GMTStatus: 200Set-Cookie2:
>
> JSESSIONID=To1014mC1884301603557076At;Version=1;Discard;Path="/soa
> p"Servlet-Engine:
>
> Tomcat
>
> Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows NT 4.0 x86;
> java.vendor=Sun
>
> Microsystems Inc.)Set-Cookie:
> JSESSIONID=To1014mC1884301603557076At;Path=/soapContent-Type:
>
> text/xml; charset=utf-8Content-Length: 464Content-Language: en
> <?xml version='1.0' encoding='UTF-8'?>
> <SOAP-ENV:Envelope
>  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
> xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
>
> xmlns:xsd="http://www.w3.org/1999/XMLSchema">
> <SOAP-ENV:Body>
>   <ns1:doublerResponse
>    xmlns:ns1="urn:InstrumentServices"
>    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>     <return xsi:type="xsd:int">778</return>
>   </ns1:doublerResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> ------------------------------------------------------------------
> ----------
>
>
>
> This communication is for informational purposes only.  It is not
> intended as
> an offer or solicitation for the purchase or sale of any
> financial instrument
> or as an official confirmation of any transaction. All market prices, data
> and other information are not warranted as to completeness or accuracy and
> are subject to change without notice. Any comments or statements
> made herein
> do not necessarily reflect those of J.P. Morgan Chase & Co.
> Incorporated, its
> subsidiaries and affiliates.