- Contents
SOAP API Developer's Guide
Introduction to SOAP in the CIC Environment
This section is for managers and other decision makers who need to understand the practical implications of SOAP technology in a CIC environment. No prior knowledge of XML or SOAP is required to understand the concepts presented here. XML and SOAP are standards for information exchange that were developed for the Internet.
What is SOAP?
SOAP stands for Simple Object Access Protocol. SOAP is an XML-based wire protocol designed for decentralized, distributed networks such as the Internet. SOAP defines conventions that allow a computer to invoke a remote procedure in another. These remote procedure calls (SOAP requests) can be transported using a variety of network protocols.
For example, the SOAP Listener task on an IIS server uses HTTP protocol to transport SOAP messages to and from the Internet. Applications developed using SOAP Notifier COM components use Notifier protocol to transport SOAP messages to and from CIC server. SOAP itself is unconcerned with the protocol used for transport. For this reason, SOAP can be used on many types of computer networks.
SOAP makes it possible for programs running on different computers to request and receive data from one another in a structured way, even when different operating systems are used. SOAP provides the XML vocabulary needed to specify method parameters, return values, and exceptions.
SOAP empowers remote computers to start handlers on CIC and receive data from CIC in response. SOAP extends CIC interoperability to the entire Internet. Anything that "talks" SOAP through HTTP can communicate with CIC. Any computer platform (Windows, Unix, Linux, Mac, etc.) that can create and transport a SOAP message request can start a handler on CIC. Depending upon the type of request, the handler may or may not send back a response containing values looked up by CIC.
For example, a Unix Server might use Enterprise JavaBeans (EJB) to generate a SOAP Message requesting information about a user's status. When the request is received by CIC, it starts a handler that looks up the user's status, generates a SOAP response, and transports the response back to the requesting server. When the Unix system receives this SOAP payload, it uses another EJB to parse and process the information.
Conversely, handlers created using CIC's SOAP tools can request data from web services and remote procedures. For example, a handler might request the current price of a stock from a brokerage service, check inventory levels from an inventory management system, conduct a credit card transaction, or obtain a weather report. SOAP support in CIC is implemented by SOAP tools in Interaction Designer that define initiators, invoke remote procedures, process requests and payloads. SOAP messages are channeled through a SOAP ISAPI Listener task that runs on an IIS server. Developers can optionally use SOAP Notifier COM components to develop COM applications that directly invoke SOAP handlers. SOAP Notifier COM components are compatible with any language/application that supports Microsoft's Component Object Model. These options are discussed later in this document.