The Web Services Provider consists of the Web Services Hub and the batch and real-time web services hosted by the Web Services Hub. The Web Services Hub works with the Integration Service and the Repository Service to process web service requests.
The following figure shows the Web Services Provider architecture:
The Web Services Hub processes requests for real-time web services and batch web services in similar ways.
The following process describes how the Web Services Hub processes web service requests:
A web service client sends a SOAP message to the Web Services Hub to run a web service.
For batch web services, the Web Services Hub authenticates the web service client based on the session ID generated during the login.
For protected real-time web services, the Web Services Hub authenticates the web service client based on the user name token.
The Web Services Hub generates a message ID for the request.
If the request is for a real-time web service, the Web Services Hub sends the message to the Integration Service.
If the request is for a batch web service operation, the Web Services Hub sends the message to the Integration Service or the Repository Service based on the type of request. For example, if the request is to run a workflow or to start or stop the Integration Service, the Web Services Hub sends the message to the Integration Service to process. If the request is to get a list of workflows in a the repository, the Web Services Hub sends the message to the Repository Service to process.
The Integration Service or Repository Service processes the request.
If the request is for a real-time web service, the Integration Service sends the processed data to the Web Services Hub which uses the message ID to correlate the request with the response.
The Web Services Hub sends a SOAP response to the web service client.
The Integration Service and Web Services Hub communicate with the Repository Service throughout the process.