Apache SOAP specific code authored by: Matthew J. Duftler <duftler@us.ibm.com>
This directory contains code which implements
a scenario developed for the SOAP interoperability
face-to-face summarized here. This README only describes how to run the
sample, and doesn't attempt to repeat any
of the information contained within that
summary or in its associated links. You can
also look at sample Registry and BidBuy service WSDL files.
Note: This sample was completed long after
the interop session had occurred, and efforts
have been made to increase compatibility
significantly.
Thanks go out to Doug Davis and the rest of the Axis development team for use of their BidBuy Client GUI as well as for detailed help on developing the sample.
The client portion of this scenario utilizes a GUI created by the developers who are working on the Axis project. The GUI, whose fully-qualified class name is samples.bidbuy.client.rfq, delegates all of its actions to an implementation of a samples.bidbuy.client.vInterface. For Apache SOAP, this interface is implemented in the samples.bidbuy.client.ApacheSoapV2 class.
To run the client, make sure that you classpath contains soap.jar and the directory which contains the samples directory, then enter:
java samples.bidbuy.client.rfq
Note: There is a file called reg.lst, located in the samples/bidbuy/client/registry directory, which contains information about all known registries of BidBuy services. The client will look in the start-up directory for this file, and if it can't find it, you will have to manually add the registries via the GUI.
The server portion of this scenario consists of 2 services: one that implements the RequestForQuote services, and another that implements the Buy and SimpleBuy services.
To deploy the first service, change to the samples/bidbuy/server/registry directory and enter:
java.org.apache.soap.server.ServiceManagerClient http://soap-server:soap-port/soap/servlet/rpcrouter deploy DeploymentDescriptor.xml
where soap-server and soap-port are the hostname and port of the machine where the rpcrouter servlet is deployed. Alternatively, you could run deploy.bat from that directory, but it assumes localhost:8080.
To deploy the second service, change to the samples/bidbuy/server/bid directory and enter:
java org.apache.soap.server.ServiceManagerClient http://soap-server:soap-port/soap/servlet/rpcrouter deploy DeploymentDescriptor.xml
where soap-server and soap-port are the hostname and port of the machine where the rpcrouter servlet is deployed. Again, you could alternatively run deploy.bat from that directory, but it assumes localhost:8080.
You can use the client and the server to
talk to one another on the same machine,
you can use the client to talk to other servers,
or you can have other clients talk to your
server. (There is nothing that binds the
client and the server together, the are just
bundled that way for convenience.)
Note: The servers listed in reg.lst are scattered
all over the Internet, so you will need external
access to be able to use them.
To try out the sample, start up the client as indicated above and select a Registration Server from the list at the top of the GUI, or enter a new one. (Even if there is a name in the box at the top, you will need to pick one from the list.) The client will then talk to the selected registry and after a couple of seconds will retrieve the list of registered BidBuy services. Place a checkmark next to one or more of the services that you wish to talk to, and click on the Request RFQs button. Assuming that everything is working correctly, you should get numbers appearing in the Quote column of the services which you selected after a second or two. You can then select one of the services that you received a quote from and issue a Simple Buy or PO Buy request to it using the bottom portion of the interface.
If you want to add or remove BidBuy services from the list on your client, you can use the Add Bid Server and Remove Server buttons, respectively.
WARNING: The Register Server and Unregister Server buttons will modify the actual registries, so unless you are putting up a server for other people to test against, or unless you are acting against your own registry, DO NOT USE THEM!
Last updated 5/24/2001 by Bill Nagy <nagy@watson.ibm.com>.