You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Khondker Akhter <Kh...@msdw.com> on 2001/03/19 16:51:14 UTC
MS SOAP/VB Client <-> Apache SOAP Server Guide alpha 1
As promised, I am trying to put together a guide. The purpose of this
guide is:
a) A simple starting point for newbies to get this kind of
communication going
b) A way for me to find out if I am approaching this the right way/or
if there is a better way of doing this
With that in mind, feel free to correct/advise me.
Server config:
* solaris 2.6 (should not matter)
* tomcat 3.1
* apache soap 2.1 (with xerces/javamail etc).
* the stockQuoteService deployed with the standard
DeploymentDescriptor.xml
You know you are "there" when you can run the stock quote service
example (over the network).
Client config:
* Windows NT 4.0 Workstation (should not matter)
* VisualStudio Enterprise 6.0 Sp5
* MS Soap Tookit 2 Beta 2.0
here is the wsdl file that describes the stock quote service:
???????????????????????????????????????????????????????????????????????????????????
? StockQuoteService.wsdl
???????????????????????????????????????????????????????????????????????????????????
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="StockQuoteService"
targetNamespace="urn:xmltoday-delayed-quotes"
xmlns:tns="urn:xmltoday-delayed-quotes"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<message name="getQuoteInput">
<part name="symbol" type="xsd:string"/>
</message>
<message name="getQuoteOutput">
<part name="quote" type="xsd:float"/>
</message>
<portType name="GetQuote">
<operation name="getQuote">
<input message="getQuoteInput"/>
<output message="getQuoteOutput"/>
</operation>
</portType>
<binding name="GetQuoteSoapBinding" type="GetQuote">
<soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getQuote">
<soap:operation soapAction=""/>
<input>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/
http://www.ibm.com/namespaces/xmi"
namespace="urn:xmltoday-delayed-quotes"/>
</input>
<output>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/
http://www.ibm.com/namespaces/xmi"
namespace="urn:xmltoday-delayed-quotes"/>
</output>
</operation>
</binding>
<service name="StockQuoteService">
<port name="StockQuotePort" binding="GetQuoteSoapBinding">
<soap:address
location="http://mgfrm65:8181/soap/servlet/rpcrouter"/>
</port>
</service>
</definitions>
?????????????????????????????????????????????????????????????????????????????????
This basis for this file is the sample from the IBM wsdl toolkit 1.1
sample for stockquote service. The only modifications I made were:
* The server address (<soap:address
location="http://mgfrm65:8181/soap/servlet/rpcrouter"/> (you would have
to change this as well and make sure you use the same port numbers--I
have different since I use Tcp tunnel to monitor the communication, e.g.
8181 to 8080)
* The hack from
http://marc.theaimsgroup.com/?l=soap-dev&m=97901982213396&w=2 for
xsi:type issue
Stick this file(StockQuoteService.wsdl) in some webserver. Attached is
the project that I used to connect to the service. The only change you
would need to make is change the WSDL_URL constant and point to your
StockQuoteService.wsdl file.
Hope this this help. Feel free to evolve this as needed.
Khondker Akhter