Web Services are means for integrating diverse and geographically distributed applications into a robust and manageable system. It consists of loosely coupled elements, each running on a different platform and using different technology, but sharing a common set of standards that allows them to communicate effectively.
Figure 19 shows the main participants in a Web Service, and the interactions between them.
Figure 19. Web Services Interactions
The primary participants are the Service Provider and the Service Requestor (Client). When a service is invoked, the Client sends a request to the Provider and receives a response. The communication happens using SOAP (Simple Object Access Protocol) messages — the XML standard for communication between two computer systems.
WSDL (Web Services Description Language) is an XML-based standard for describing a Web Service. The WSDL description specifies the exact format of the request and response messages, details about the communication protocols that are to be used to transfer those messages, and other information about the service. Before a Web Service can be invoked, the client must obtain the WSDL description about the service, usually from the service provider.
The Provider may also choose to advertise the Web Services it has by registering them with a Discovery Agency. A Discovery Agency is the Web Service equivalent of an Internet search engine — it allows a client to search among the published Web Services and to find information about each particular service. A Discovery Agency uses the UDDI (Universal Description, Discovery and Integration) standard to store and provide access to the list of published Web Services.
General information about Web Services can be obtained from Apache Axis (http://ws.apache.org/axis).
Note: For information regarding Web services used in Business Process Server, refer to the Web Services Developer's Guide.