Creating Web Services and Web Clients in Caché
- About This Book
- Introduction to Caché Web Services and Web Clients
- Introduction to Caché Web Services
- Introduction to Caché Web Clients
- Additional Features
- Standards Supported in Caché
- Key Points about the SAX Parser
- Creating SOAP Web Services
- Overview of Caché 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
- 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 a Caché 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 a Caché Web Client
- Using MTOM for Attachments
- Attachments and SOAP Message Packaging
- Default Behavior of Caché Web Services and Web Clients
- Forcing Responses as MTOM Packages
- Forcing Requests as MTOM Packages
- Controlling the MTOM Packaging
- Example
- Using SOAP with Attachments
- Adding and Using Custom Header Elements
- Introduction to SOAP Header Elements in Caché
- 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
- Using the Caché Binary SOAP Format
- Introduction
- Extending the WSDL for a Caché Web Service
- Redefining a Caché Web Client to Use Binary SOAP
- Specifying the Character Set
- Details on the Caché 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
- Fine-Tuning a Caché Web Service
- Disabling Access to the Online WSDL
- Requiring a Username and Password
- Controlling the XML Types
- Controlling the Namespaces of the Schema and Types
- Including Documentation for the Types
- Adding Namespace Declarations to the SOAP Envelope
- Checking for Required Elements and Attributes
- Controlling the Form of Null String Arguments
- Controlling the Message Name of the SOAP Response
- Overriding the HTTP SOAP Action and Request Message Name
- Specifying Whether Elements Are Qualified
- Controlling Whether Message Parts Use Elements or Types
- Controlling Use of the xsi:type Attribute
- Controlling Use of Inline References in Encoded Format
- Specifying the SOAP Envelope Prefix
- Restricting the SOAP Versions Handled by a Web Service
- Sending Responses Compressed by gzip
- Defining a One-Way Web Method
- Adding Line Breaks to Binary Data
- Adding a Byte-Order Mark to the SOAP Messages
- Customizing the Timeout Period
- Using Process-Private Globals to Support Very Large Messages
- Customizing Callbacks of a Web Service
- Specifying Custom Transport for a Web Service
- Defining Custom Processing in a Web Service
- Fine-Tuning a Caché Web Client
- Disabling Keep-Alive for a Web Client
- Controlling the Form of Null String Arguments
- Controlling the Client Timeout
- Using a Proxy Server
- Setting HTTP Headers
- Specifying the HTTP Version to Use
- Disabling SSL Server Name Checking
- Controlling Use of the xsi:type Attribute
- Controlling Use of Inline References for Encoded Format
- Specifying the Envelope Prefix
- Adding Namespace Declarations to the SOAP Envelope
- Sending Responses Compressed by gzip
- Quoting the SOAP Action (SOAP 1.1 Only)
- Treating HTTP Status 202 Like Status 200
- Defining a One-Way Web Method
- Adding Line Breaks to Binary Data
- Adding a Byte-Order Mark to the SOAP Messages
- Using Process-Private Globals When Parsing
- Creating Custom SOAP Messages
- Specifying Custom HTTP Requests
- Customizing Callbacks of a Web Client
- Specifying Custom Transport from a Web Client
- Specifying Flags for the SAX Parser
- Using the WS-Security Login Feature
- Using HTTP User Authentication
- Troubleshooting Caché SOAP Problems
- Summary of Web Service URLs
- 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 Caché Web Services
- Details of the Generated Classes