📄️ SOAP Framework cookbook
Web services differ semantically in many ways. This SOAP Framework cookbook presents SOAP Framework recipes addressing the types of differences commonly encountered.
📄️ Manipulating data
You often need to manipulate the XML data when passing it to or receiving it from a SOAP web service to implement OperationTypes other than EXECUTE.
📄️ Manipulating metadata
To successfully invoke a SOAP web service operation, a variety of metadata is required. The metadata is typically provided in a WSDL and one or more XML schemas, either embedded in the WSDL or as external documents.
📄️ Protected WSDL retrieval
A WSDL for a SOAP web service may not be publicly accessible. This is often the case if the WSDL is customized for each user of the web service. If the WSDL is protected by an HTTP basic authentication or a simple form-based login authentication mechanism, then the connector can download the WSDL on-the-fly.
📄️ Including WSDL in the connector archive
The worst-case scenario is when a WSDL is not programmatically accessible. In this situation, the WSDL must be included in the connector archive. This is not ideal because there is no way to make the WSDL user-specific, and any changes to the WSDL require building and deploying a new connector.
📄️ Editing XML schemas
You may need to manipulate an XML schema for a SOAP web service before returning it in the ObjectDefinition. Typically, the more complete the XML schema definition that is returned, the better for the user.
📄️ Miscellaneous recipes
The following miscellaneous recipes do not fit into any obvious category.
📄️ Other operations
The WSConnector is delivered with out-of-the-box support for the EXECUTE operation \(implemented in WSExecuteOperation\). A comprehensive connector implementation typically includes support for some or all of the other OperationTypes as well.
📄️ Implement Browsing support
Browsing has two phases: getting the list of available objects, and getting the definition of a specific object. These examples demonstrate how to set up browsing for an UPDATE operation so that the request and response objects to the connector operation are the individual object types (e.g., the "Contact" object).
📄️ Implement UPDATE operation
Continuing with the altered browsing in the Browsing support implementation topic, the UPDATE operation now receives individual "Contact" objects and is expected to return the same. The operation implementation must now perform the actual SOAP body document construction.
📄️ Security
Authentication is typically the first challenge to address when invoking a web service.