Programming Guide

     Previous  Next    Contents  Open Index in new window  View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Introduction to Oracle SALT Programming

Oracle SALT Web Services Programming

Oracle SALT Proxy Service

Oracle SALT Message Conversion

Oracle SALT Programming Tasks Quick Index

Oracle SALT SCA Programming

Data Type Mapping and Message Conversion

Overview of Data Type Mapping and Message Conversion

Understanding Oracle SALT Message Conversion

Inbound Message Conversion

Outbound Message Conversion

Tuxedo-to-XML Data Type Mapping for Tuxedo Services

Tuxedo STRING Typed Buffers

Tuxedo CARRAY Typed Buffers

Mapping Example Using base64Binary

Mapping Example Using MIME Attachment

Tuxedo MBSTRING Typed Buffers

Tuxedo XML Typed Buffers

Tuxedo VIEW/VIEW32 Typed Buffers

VIEW/VIEW32 Considerations

Tuxedo FML/FML32 Typed Buffers

FML Data Mapping Example

FML32 Data Mapping Example

FML/FML32 Considerations

Tuxedo X_C_TYPE Typed Buffers

Tuxedo X_COMMON Typed Buffers

Tuxedo X_OCTET Typed Buffers

Custom Typed Buffers

XML-to-Tuxedo Data Type Mapping for External Web Services

XML Schema Built-In Simple Data Type Mapping

XML Schema User Defined Data Type Mapping

WSDL Message Mapping

Web Service Client Programming

Overview

Oracle SALT Web Service Client Programming Tips

Oracle WebLogic Web Service Client Programming Toolkit

Apache Axis for Java Web Service Client Programming Toolkit

Microsoft .NET Web Service Client Programming Toolkit

Web Service Client Programming References

Online References

Oracle Tuxedo ATMI Programming for Web Services

Overview

Converting WSDL Model Into Tuxedo Model

WSDL-to-Tuxedo Object Mapping

Invoking SALT Proxy Services

Oracle SALT Supported Communication Pattern

Tuxedo Outbound Call Programming: Main Steps

Managing Error Code Returned from GWWS

Handling Fault Messages in a Tuxedo Outbound Application

Using Oracle SALT Plug-Ins

Understanding Oracle SALT Plug-Ins

Plug-In Elements

Plug-In ID

Plug-In Name

Plug-In Implementation Functions

Plug-In Register Functions

Information Providing Function

Initiating Function

Exiting Function

vtable Setting Function

Developing a Plug-In Interface

Developing a Plug-In Shared Library

Defining a Plug-In interface in SALT configuration file

Programming Message Conversion Plug-ins

How Message Conversion Plug-ins Work

How Message Conversion Plug-in Works in an Inbound Call Scenario

How Message Conversion Plug-in Works in an Outbound Call Scenario

When Do We Need Message Conversion Plug-in

Developing a Message Conversion Plug-in Instance

Converting a SOAP Message Payload to a Tuxedo Buffer

Converting a Tuxedo Buffer to a SOAP Message Payload

SALT 1.1 Custom Buffer Type Conversion Plug-in Compatibility

Programming Outbound Authentication Plug-Ins

How Outbound Authentication Plug-Ins Work

Implementing a Credential Mapping Interface Plug-In

Mapping the Tuxedo UID and HTTP Username

Oracle SALT SCA Programming

Overview

SCA Utilities

SCA Client Programming

SCA Client Programming Steps

Setting Up the Client Directory Structure

Developing the Client Application

Composing the SCDL Descriptor

Building the Client Application

Running the Client Application

Invoking Existing Tuxedo Services

Handling TPFAIL Data

SCA Component Programming

SCA Component Programming Steps

Setting Up the Component Directory

Developing the Component Implementation

Composing the SCDL Descriptor

Compiling and Linking the Components

Building the Tuxedo Server Host

SCA Python and Ruby Programming

SCA Python and Ruby Programming Overview

Python and Ruby Client Programming

SCDL Clients

Python Clients

Ruby Clients

Python and Ruby Component Programming

SCDL Components

Python Components

Ruby Components

SCA Structure Support

SCA Structure Support Overview

SCA Structure Limitations

Using SCA Structure Description Files

Using tuxscagen to Generate Structures

SCA Remote Protocol Support

/WS

/Domains

SCA Binding

ATMI Binding

Java ATMI (JATMI) Binding

Python and Ruby Binding

Python and Ruby Binding Limitations

Web Services Binding

SCA Data Type Mapping

Run-Time Data Type Mapping

Simple Tuxedo Buffer Data Mapping

Multibyte String Data Mapping

Complex Return Type Mapping

Complex Tuxedo Buffer Data Mapping

SDO Mapping

SCA Utility Data Type Mapping

C++ Parameter/Return Type and Tuxedo Buffer Type Mapping

C++ Parameter Type and Tuxedo Parameter Type Mapping

C++ Parameter Type and Tuxedo Complex Type Mapping

SDO Mapping

C Struct Mapping

Parameter and Return Types to Parameter-Level Keyword Restrictions

Python and Ruby Data Type Mapping

Python Data Type Mapping

Python Parameters

Dictionaries

Ruby Data Type Mapping

Ruby Parameters

Hash

SCA Structure Data Type Mapping

SCA Structure and FML32 or FML Mapping

FML Field Naming Requirements

Long Element Truncation

SCA Structure and VIEW32, VIEW, X_OCTET, or X_C_TYPE Mapping

SCA Structure and Mbstring Mapping

TPFAIL Return Data

SCA and Tuxedo Interoperability

SCA Transactions

SCA Security

See Also


  Back to Top       Previous  Next