Creating Web Services and Web Clients Introduction to Web Services and Web Clients in InterSystems IRIS Introduction to InterSystems IRIS Web Services Introduction to InterSystems IRIS Web Clients Additional Features SOAP Standards Key Points about the SAX Parser Creating Web Services Overview of InterSystems IRIS Web Services Basic Requirements Simple Example Creating a Web Service Specifying Parameters of the Web Service About the Catalog and Test Pages Viewing the WSDL SOAP Message Variations Overview How Message Variation Is Determined Examples of Message Variations Creating Web Clients Overview of the SOAP Wizard Using the SOAP Wizard Generating the Client Classes Programmatically Modifying the Generated Client Classes Using the Generated Web Client Classes Adjusting Properties of a Web Client Instance Using the HTTP Response SOAP Fault Handling Default Fault Handling in a Web Service Returning Custom SOAP Faults in an InterSystems IRIS Web Service Creating a Fault Object Manually Adding WS-Addressing Header Elements When Faults Occur Adding Other Header Elements When Faults Occur Handling SOAP Faults and Other Errors in an InterSystems IRIS Web Client Using MTOM for Attachments Attachments and SOAP Message Packaging Default Behavior of InterSystems IRIS Web Services and Web Clients Forcing Responses as MTOM Packages Forcing Requests as MTOM Packages Controlling the MTOM Packaging Example Using SOAP with Attachments Sending Attachments Using Attachments Example Adding and Using Custom Header Elements Introduction to SOAP Header Elements in InterSystems IRIS Defining Custom Header Elements Adding a Custom Header Element to a SOAP Message Specifying Supported Header Elements Specifying the Supported Header Elements in an XData Block Specifying the Supported Header Elements in the SOAPHEADERS Parameter Using Header Elements Adding and Using WS-Addressing Header Elements Overview Effect on the WSDL Default WS-Addressing Header Elements Adding WS-Addressing Header Elements Manually Handling WS-Addressing Header Elements SOAP Session Management Overview of SOAP Sessions Enabling Sessions Using Session Information Using the InterSystems IRIS Binary SOAP Format Introduction Extending the WSDL for an InterSystems IRIS Web Service Redefining an InterSystems IRIS Web Client to Use Binary SOAP Specifying the Character Set Details on the InterSystems IRIS Binary SOAP Format Using Datasets in SOAP Messages About Datasets Defining a Typed Dataset Controlling the Dataset Format Viewing the Dataset and Schema as XML Effect on the WSDL Troubleshooting SOAP Problems in InterSystems IRIS Information Needed for Troubleshooting Problems Consuming WSDLs Problems Sending Messages Summary of Web Service URLs Web Service URLs Using a Password-Protected WSDL URL Details of the Generated WSDLs Overview of WSDL Documents Sample Web Service Namespace Declarations <service> <binding> <portType> <message> <types> WSDL Variations Due to Method Signature Variations Other WSDL Variations for InterSystems IRIS Web Services Details of the Generated Classes Overview of the Generated Classes Keywords That Control Encoding and Binding Style Parameters and Keywords That Control Namespace Assignment Creation of Array Properties Additional Notes on Web Methods in the Generated Class