Creating Web Services and Web Clients in Caché
Contents
 
   
Server:docs1
Instance:LATEST
User:UnknownUser
 
-
Go to:
Search:    

 
Contents

Preface : 
 
 
Chapter 1: 
 
  • 1.1 Introduction to Caché Web Services
  • 1.1.1 Creating Caché Web Services
  • 1.1.2 Web Service as Part of a Web Application
  • 1.1.3 The WSDL
  • 1.1.4 Web Service Architecture
  • 1.2 Introduction to Caché Web Clients
  • 1.2.1 Creating Caché Web Clients
  • 1.2.2 Web Client Architecture
  • 1.3 Additional Features
  • 1.4 Standards Supported in Caché
  • 1.4.1 Basic Standards
  • 1.4.2 WSDL Support in Caché
  • 1.5 Key Points about the SAX Parser
  • Chapter 2: 
     
  • 2.1 Overview of Caché Web Services
  • 2.2 Basic Requirements
  • 2.2.1 Input and Output Objects That Do Not Need %XML.Adaptor
  • 2.2.2 Using Result Sets as Input or Output
  • 2.3 Simple Example
  • 2.4 Creating a Web Service
  • 2.4.1 Using the Web Service Wizard
  • 2.4.2 Using the SOAP Wizard with an Existing WSDL
  • 2.4.3 Subclassing an Existing Caché Web Service
  • 2.5 Specifying Parameters of the Web Service
  • 2.6 About the Catalog and Test Pages
  • 2.6.1 Access to These Pages
  • 2.6.2 Notes on These Pages
  • 2.7 Viewing the WSDL
  • 2.7.1 Viewing the WSDL
  • 2.7.2 Generating the WSDL
  • 2.7.3 Suppressing Internal Web Methods from the WSDL
  • Chapter 3: 
     
  • 3.1 Overview
  • 3.1.1 Binding Style
  • 3.1.2 Encoding Format
  • 3.2 How Message Variation Is Determined
  • 3.3 Examples of Message Variations
  • 3.3.1 Wrapped Document/Literal
  • 3.3.2 Message/Unwrapped Document/Literal
  • 3.3.3 RPC/Encoded
  • 3.3.4 RPC/Literal
  • Chapter 4: 
     
  • 4.1 Overview of the SOAP Wizard
  • 4.2 Using the SOAP Wizard
  • 4.3 Generating the Client Classes Programmatically
  • 4.4 Modifying the Generated Client Classes
  • 4.4.1 Adjusting the Generated Classes for Long Strings
  • 4.4.2 Other Adjustments
  • 4.5 Using the Generated Web Client Classes
  • 4.5.1 Example 1: Using the Client That Uses Wrapped Messages
  • 4.5.2 Example 2: Using the Client That Uses Unwrapped Messages
  • 4.6 Adjusting Properties of a Web Client Instance
  • 4.6.1 Changing the Endpoint for the Web Client
  • 4.6.2 Configuring the Client to Use SSL
  • 4.6.3 Specifying the SOAP Version
  • 4.6.4 Other Adjustments
  • 4.7 Using the HTTP Response
  • Chapter 5: 
     
  • 5.1 Default Fault Handling in a Web Service
  • 5.2 Returning Custom SOAP Faults in a Caché Web Service
  • 5.2.1 Methods to Create Faults
  • 5.2.2 Macros for SOAP Fault Codes
  • 5.3 Creating a Fault Object Manually
  • 5.3.1 SOAP 1.1 Faults
  • 5.3.2 SOAP 1.2 Faults
  • 5.4 Adding WS-Addressing Header Elements When Faults Occur
  • 5.5 Adding Other Header Elements When Faults Occur
  • 5.6 Handling SOAP Faults and Other Errors in a Caché Web Client
  • 5.6.1 Example 1: Try-Catch
  • 5.6.2 Example 2: $ZTRAP
  • 5.6.3 SSL Handshake Errors
  • Chapter 6: 
     
  • 6.1 Attachments and SOAP Message Packaging
  • 6.1.1 SOAP Messages with All-Inline Parts (Default)
  • 6.1.2 SOAP Messages with MTOM Packaging
  • 6.1.3 SOAP with Attachments
  • 6.2 Default Behavior of Caché Web Services and Web Clients
  • 6.3 Forcing Responses as MTOM Packages
  • 6.3.1 Effect on the WSDL
  • 6.4 Forcing Requests as MTOM Packages
  • 6.4.1 Effect on the WSDL
  • 6.5 Controlling the MTOM Packaging
  • 6.6 Example
  • 6.6.1 Web Service
  • 6.6.2 Web Client
  • Chapter 7: 
     
  • 7.1 Sending Attachments
  • 7.2 Using Attachments
  • 7.3 Example
  • 7.3.1 Web Service
  • 7.3.2 Web Client
  • Chapter 8: 
     
  • 8.1 Introduction to SOAP Header Elements in Caché
  • 8.1.1 How Caché Represents SOAP Headers
  • 8.1.2 Supported Header Elements
  • 8.1.3 Header Elements and the WSDL
  • 8.1.4 Required Header Elements
  • 8.2 Defining Custom Header Elements
  • 8.3 Adding a Custom Header Element to a SOAP Message
  • 8.4 Specifying Supported Header Elements
  • 8.5 Specifying the Supported Header Elements in an XData Block
  • 8.5.1 Details
  • 8.5.2 Inheritance of Custom Headers
  • 8.5.3 Examples
  • 8.6 Specifying the Supported Header Elements in the SOAPHEADERS Parameter
  • 8.6.1 Inheritance of Custom Headers
  • 8.7 Using Header Elements
  • Chapter 9: 
     
  • 9.1 Overview
  • 9.2 Effect on the WSDL
  • 9.3 Default WS-Addressing Header Elements
  • 9.3.1 Default WS-Addressing Header Elements in Request Messages
  • 9.3.2 Default WS-Addressing Header Elements in Response Messages
  • 9.4 Adding WS-Addressing Header Elements Manually
  • 9.5 Handling WS-Addressing Header Elements
  • Chapter 10: 
     
  • 10.1 Overview of SOAP Sessions
  • 10.2 Enabling Sessions
  • 10.3 Using Session Information
  • Chapter 11: 
     
  • 11.1 Introduction
  • 11.2 Extending the WSDL for a Caché Web Service
  • 11.3 Redefining a Caché Web Client to Use Binary SOAP
  • 11.4 Specifying the Character Set
  • 11.5 Details on the Caché Binary SOAP Format
  • Chapter 12: 
     
  • 12.1 About Datasets
  • 12.2 Defining a Typed Dataset
  • 12.3 Controlling the Dataset Format
  • 12.4 Viewing the Dataset and Schema as XML
  • 12.5 Effect on the WSDL
  • Chapter 13: 
     
  • 13.1 Requiring a Username and Password
  • 13.2 Controlling the XML Types
  • 13.3 Controlling the Namespaces of the Schema and Types
  • 13.3.1 Controlling the Namespace of the Schema
  • 13.3.2 Controlling the Namespace of the Types
  • 13.4 Including Documentation for the Types
  • 13.5 Adding Namespace Declarations to the SOAP Envelope
  • 13.6 Checking for Required Elements and Attributes
  • 13.7 Controlling the Form of Null String Arguments
  • 13.8 Controlling the Message Name of the SOAP Response
  • 13.9 Overriding the HTTP SOAP Action and Request Message Name
  • 13.10 Specifying Whether Elements Are Qualified
  • 13.11 Controlling Whether Message Parts Use Elements or Types
  • 13.12 Controlling Use of the xsi:type Attribute
  • 13.13 Controlling Use of Inline References in Encoded Format
  • 13.14 Specifying the SOAP Envelope Prefix
  • 13.15 Restricting the SOAP Versions Handled by a Web Service
  • 13.16 Sending Responses Compressed by gzip
  • 13.17 Defining a One-Way Web Method
  • 13.17.1 One-Way Web Methods and SOAP Headers
  • 13.17.2 Dynamically Making a Web Method One Way
  • 13.18 Adding Line Breaks to Binary Data
  • 13.19 Adding a Byte-Order Mark to the SOAP Messages
  • 13.20 Customizing the Timeout Period
  • 13.21 Using Process-Private Globals to Support Very Large Messages
  • 13.22 Customizing Callbacks of a Web Service
  • 13.23 Specifying Custom Transport for a Web Service
  • 13.23.1 Background
  • 13.23.2 Defining Custom Transport for a Web Service
  • 13.24 Defining Custom Processing in a Web Service
  • 13.24.1 Overview
  • 13.24.2 Implementing ProcessBodyNode()
  • 13.24.3 Implementing ProcessBody()
  • Chapter 14: 
     
  • 14.1 Disabling Keep-Alive for a Web Client
  • 14.2 Controlling the Form of Null String Arguments
  • 14.3 Controlling the Client Timeout
  • 14.4 Using a Proxy Server
  • 14.5 Setting HTTP Headers
  • 14.6 Specifying the HTTP Version to Use
  • 14.7 Disabling SSL Server Name Checking
  • 14.8 Controlling Use of the xsi:type Attribute
  • 14.9 Controlling Use of Inline References for Encoded Format
  • 14.10 Specifying the Envelope Prefix
  • 14.11 Adding Namespace Declarations to the SOAP Envelope
  • 14.12 Sending Responses Compressed by gzip
  • 14.13 Quoting the SOAP Action (SOAP 1.1 Only)
  • 14.14 Treating HTTP Status 202 Like Status 200
  • 14.15 Defining a One-Way Web Method
  • 14.16 Adding Line Breaks to Binary Data
  • 14.17 Adding a Byte-Order Mark to the SOAP Messages
  • 14.18 Using Process-Private Globals When Parsing
  • 14.19 Creating Custom SOAP Messages
  • 14.20 Specifying Custom HTTP Requests
  • 14.21 Customizing Callbacks of a Web Client
  • 14.22 Specifying Custom Transport from a Web Client
  • 14.22.1 Background
  • 14.22.2 Defining Custom Transport for a Caché Web Client
  • 14.23 Specifying Flags for the SAX Parser
  • 14.24 Using the WS-Security Login Feature
  • 14.25 Using HTTP User Authentication
  • Chapter 15: 
     
  • 15.1 Information Needed for Troubleshooting
  • 15.1.1 Caché SOAP Log
  • 15.1.2 HTTP Trace in the CSP Gateway
  • 15.1.3 Third-Party Tracing Tools
  • 15.2 Problems Consuming WSDLs
  • 15.3 Problems Sending Messages
  •  
    Appendix A: 
     
  • A.1 Web Service URLs
  • A.2 Using a Password-Protected WSDL URL
  • Appendix B: 
     
  • B.1 Overview of WSDL Documents
  • B.2 Sample Web Service
  • B.3 Namespace Declarations
  • B.4 <service>
  • B.5 <binding>
  • B.6 <portType>
  • B.7 <message>
  • B.8 <types>
  • B.8.1 Name Attributes
  • B.8.2 Namespaces in <types>
  • B.8.3 Other Possible Variations
  • B.9 WSDL Variations Due to Method Signature Variations
  • B.9.1 Returning Values by Reference or as Output Parameters
  • B.10 Other WSDL Variations for Caché Web Services
  • B.10.1 WSDL Differences for Caché SOAP Sessions
  • B.10.2 WSDL Differences for Caché Binary SOAP Format
  • B.10.3 WSDL Differences for One-Way Web Methods
  • Appendix C: 
     
  • C.1 Overview of the Generated Classes
  • C.2 Keywords That Control Encoding and Binding Style
  • C.3 Parameters and Keywords That Control Namespace Assignment
  • C.3.1 Namespaces for the Messages
  • C.3.2 Namespaces for the Types
  • C.4 Creation of Array Properties
  • C.5 Additional Notes on Web Methods in the Generated Class