Skip Headers

Oracle® Streams Advanced Queuing User's Guide and Reference
Release 10.1

Part Number B10785-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Feedback

Go to next page
Next
View PDF

Contents

Title and Copyright Information

Send Us Your Comments

Preface

Intended Audience
Structure
Related Documents
Conventions
Documentation Accessibility

What's New in Oracle Streams AQ?

Oracle Streams AQ Release 10.1 New Features
Oracle9i Release 2 (9.2.0) New Features
Oracle9i Release 1 (9.0.1) New Features in Oracle Streams AQ
Oracle8i New Features in Oracle Streams AQ

Part I Introducing Oracle Streams AQ

1 Introducing Oracle Streams AQ

Overview of Oracle Streams AQ
Oracle Streams AQ in Integrated Application Environments
Oracle Streams AQ Client/Server Communication
Multiconsumer Dequeuing of the Same Message
Oracle Streams AQ Implementation of Workflows
Oracle Streams AQ Implementation of Publish/Subscribe
Message Propagation
Message Format Transformation
Internet Integration and Internet Data Access Presentation
Internet Message Payloads
Propagation over the Internet Using HTTP
Internet Data Access Presentation (IDAP)
Interfaces to Oracle Streams AQ
Oracle Streams AQ Features
Enqueue Features
Dequeue Features
Propagation Features
Other Oracle Streams AQ Features
Oracle Streams AQ Demos

2 Getting Started with Oracle Streams AQ

Oracle Streams AQ Prerequisites
Oracle Streams AQ by Example
Creating Oracle Streams AQ Queues and Queue Tables
Enqueuing and Dequeuing Oracle Streams AQ Messages
Oracle Streams AQ Propagation
Dropping Oracle Streams AQ Objects
Revoking Roles and Privileges
Deploying Oracle Streams AQ with XA
Oracle Streams AQ and Memory Usage
Frequently Asked Questions
Oracle Streams AQ Installation Questions
General Oracle Streams AQ Questions
Transformation Questions

3 Basic Components

Object Name (object_name)
Type Name (type_name)
AQ Agent Type (aq$_agent)
AQ Recipient List Type (aq$_recipient_list_t)
AQ Agent List Type (aq$_agent_list_t)
AQ Subscriber List Type (aq$_subscriber_list_t)
AQ Registration Information List Type (aq$_reg_info_list)
AQ Post Information List Type (aq$_post_info_list)
AQ Registration Information Type (aq$_reg_info)
AQ Notification Descriptor Type
AQ Post Information Type
Enumerated Constants in the Oracle Streams AQ Administrative Interface
Enumerated Constants in the Oracle Streams AQ Operational Interface
INIT.ORA Parameter File Considerations
AQ_TM_PROCESSES Parameter No Longer Needed in init.ora
JOB_QUEUE_PROCESSES Parameter

4 Oracle Streams AQ: Programmatic Environments

Programmatic Environments for Accessing Oracle Streams AQ
Using PL/SQL to Access Oracle Streams AQ
Using OCI to Access Oracle Streams AQ
Using OCCI to Access Oracle Streams AQ
Using Visual Basic (OO4O) to Access Oracle Streams AQ
Using Oracle Java Message Service (OJMS) to Access Oracle Streams AQ
Accessing Standard and Oracle JMS Applications
Using Oracle Streams AQ XML Servlet to Access Oracle Streams AQ
Comparing Oracle Streams AQ Programmatic Environments
Oracle Streams AQ Administrative Interfaces
Oracle Streams AQ Operational Interfaces

Part II Managing and Tuning Oracle Streams AQ

5 Managing Oracle Streams AQ

Oracle Streams AQ Compatibility Parameters
Queue Security and Access Control
Oracle Streams AQ Security
Administrator Role
User Role
Access to Oracle Streams AQ Object Types
Queue Security
Queue Privileges and Access Control
OCI Applications and Queue Access
Security Required for Propagation
Queue Table Export-Import
Exporting Queue Table Data
Importing Queue Table Data
Data Pump Export and Import
Creating Oracle Streams AQ Administrators and Users
Oracle Enterprise Manager Support
Using Oracle Streams AQ with XA
Restrictions on Queue Management
Remote Subscribers
DML Not Supported on Queue Tables or Associated IOTs
Propagation from Object Queues with REF Payload Attributes
Collection Types in Message Payloads
Synonyms on Queue Tables and Queues
Tablespace Point-in-Time Recovery
Nonpersistent Queues
Managing Propagation
EXECUTE Privileges Required for Propagation
The Number of Job Queue Processes
Optimizing Propagation
Message States During Client Requests for Enqueue
Propagation from Object Queues
Debugging Oracle Streams AQ Propagation Problems
8.0-Compatible Queues
Migrating To and From 8.0
Importing and Exporting with 8.0-Style Queues
Roles in 8.0
Security with 8.0-Style Queues
Access to Oracle Streams AQ Object Types
OCI Application Access to 8.0-Style Queues
Pluggable Tablespaces and 8.0-Style Multiconsumer Queues
Autocommit Features in the DBMS_AQADM Package

6 Oracle Streams AQ Performance and Scalability

Performance Overview
Oracle Streams AQ and Oracle Real Application Clusters
Oracle Streams AQ in a Shared Server Environment
Basic Tuning Tips
Using Storage Parameters
I/O Configuration
Running Enqueue and Dequeue Processes Concurrently in a Single Queue Table
Running Enqueue and Dequeue Processes Serially in a Single Queue Table
Creating Indexes on a Queue Table
Propagation Tuning Tips

Part III Oracle Streams AQ: Sample Application

7 Oracle Streams AQ Sample Application

A Sample Application
General Features of Oracle Streams AQ
System-Level Access Control
Queue-Level Access Control
Message Format Transformation
Creating Transformations
Structured Payloads
Creating Queues with XMLType Payloads
Nonpersistent Queues
Retention and Message History
Publish/Subscribe Support
Oracle Real Application Clusters Support
Statistics Views and Oracle Streams AQ
Internet Access for Oracle Streams AQ
Enqueue Features
Subscriptions and Recipient Lists
Priority and Ordering of Messages
Time Specification: Delay
Time Specification: Expiration
Message Grouping
Message Transformation During Enqueue
Enqueue Using the Oracle Streams AQ XML Servlet
Dequeue Features
Dequeue Methods
Multiple Recipients
Local and Remote Recipients
Message Navigation in Dequeue
Modes of Dequeuing
Optimization of Waiting for Arrival of Messages
Retry with Delay Interval
Exception Handling
Rule-Based Subscription
Listen Capability
Message Transformation During Dequeue
Dequeue Using the Oracle Streams AQ XML Servlet
Asynchronous Notifications
Registering for Notifications Using the Oracle Streams AQ XML Servlet
Propagation Features
Propagation Overview
Propagation Scheduling
Propagation of Messages with LOB Attributes
Enhanced Propagation Scheduling Capabilities
Exception Handling During Propagation
Message Format Transformation During Propagation
Propagation Using HTTP

Part IV Oracle Streams AQ Administrative and Operational Interface

8 Oracle Streams AQ Administrative Interface

Managing Queue Tables
Creating a Queue Table
Altering a Queue Table
Dropping a Queue Table
Purging a Queue Table
Migrating a Queue Table
Managing Queues
Creating a Queue
Creating a Nonpersistent Queue
Altering a Queue
Dropping a Queue
Starting a Queue
Stopping a Queue
Managing Transformations
Creating a Transformation
Modifying a Transformation
Dropping a Transformation
Granting and Revoking Privileges
Granting System Oracle Streams AQ Privileges
Revoking Oracle Streams AQ System Privileges
Granting Queue Privileges
Revoking Queue Privileges
Managing Subscribers
Adding a Subscriber
Altering a Subscriber
Removing a Subscriber
Managing Propagations
Scheduling a Queue Propagation
Unscheduling a Queue Propagation
Verifying Propagation Queue Type
Altering a Propagation Schedule
Enabling a Propagation Schedule
Disabling a Propagation Schedule
Managing Oracle Streams AQ Agents
Creating an Oracle Streams AQ Agent
Altering an Oracle Streams AQ Agent
Dropping an Oracle Streams AQ Agent
Enabling Database Access
Disabling Database Access
Adding an Alias to the LDAP Server
Deleting an Alias from the LDAP Server

9 Oracle Streams AQ Administrative Interface: Views

All Queue Tables in Database View
User Queue Tables View
All Queues in Database View
All Propagation Schedules View
Queues for Which User Has Any Privilege View
Queues for Which User Has Queue Privilege View
Messages in Queue Table View
Queue Tables in User Schema View
Queues In User Schema View
Propagation Schedules in User Schema View
Queue Subscribers View
Queue Subscribers and Their Rules View
Number of Messages in Different States for the Whole Database View
Number of Messages in Different States for Specific Instances View
Oracle Streams AQ Agents Registered for Internet Access View
All Transformations View
All Transformation Functions View
User Transformations View
User Transformation Functions View

10 Oracle Streams AQ Operational Interface: Basic Operations

Enqueuing a Message
Enqueuing a Message and Specifying Options
Using Secure Queues
Enqueuing a Message and Specifying Message Properties
Enqueuing a Message and Specifying Sender ID
Enqueuing a Message and Adding Payload
Enqueuing an Array of Messages
Listening to One or More Queues
Dequeuing a Message
Dequeuing a Message from a Single-Consumer Queue and Specifying Options
Dequeuing a Message from a Multiconsumer Queue and Specifying Options
Dequeuing an Array of Messages
Registering for Notification
Posting for Subscriber Notification
Adding an Agent to the LDAP Server
Removing an Agent from the LDAP Server

Part V Using Oracle JMS and Oracle Streams AQ

11 Creating Oracle Streams AQ Applications Using JMS

General Features of JMS and Oracle JMS
J2EE Compliance
JMSPriority
JMSExpiration
Durable Subscribers
JMS Connection and Session
ConnectionFactory Objects
Using AQjmsFactory to Obtain ConnectionFactory Objects
Using JNDI to Look Up ConnectionFactory Objects
JMS Connection
JMS Session
JMS Connection Examples
JMS Destination
Using a JMS Session to Obtain Destination Objects
Using JNDI to Look Up Destination Objects
JMS Destination Methods
JMS Destination Examples
System-Level Access Control in JMS
Destination-Level Access Control in JMS
Retention and Message History in JMS
Supporting Oracle Real Application Clusters in JMS
Supporting Statistics Views in JMS
Structured Payload/Message Types in JMS
JMS Message Headers
JMS Message Properties
JMS Message Body
The AQ$_JMS_MESSAGE Type
JMS Message Body: Stream Message
JMS Message Body: Bytes Message
JMS Message Body: Map Message
JMS Message Body: Text Message
JMS Message Body: Object Message
JMS Message Body: AdtMessage
JMS Point-to-Point Model Features
Queues
QueueSender
QueueReceiver
QueueBrowser
JMS Publish/Subscribe Model Features
Topic
Durable Subscriber
TopicPublisher
Recipient Lists
TopicReceiver
TopicBrowser
JMS MessageProducer Features
Priority and Ordering of Messages
Time Specification - Delay
Time Specification - Expiration
Message Grouping
JMS Message Consumer Features
Receiving Messages
Message Navigation in Receive
Browsing Messages
Retry with Delay Interval
Asynchronously Receiving Messages Using Message Listener
Oracle Streams AQ Exception Handling
JMS Propagation
Remote Subscribers
Scheduling Propagation
Enhanced Propagation Scheduling Capabilities
Exception Handling During Propagation
Message Transformation with JMS AQ
Defining Message Transformations
Sending Messages to a Destination Using a Transformation
Receiving Messages from a Destination Using a Transformation
Specifying Transformations for Topic Subscribers
Specifying Transformations for Remote Subscribers

12 Oracle Streams AQ JMS Interface: Basic Operations

EXECUTE Privilege on DBMS_AQIN
Registering a Queue/Topic Connection Factory
Registering Through the Database Using JDBC Connection Parameters
Registering Through the Database Using a JDBC URL
Registering Through LDAP Using JDBC Connection Parameters
Registering Through LDAP Using a JDBC URL
Unregistering a Queue/Topic Connection Factory
Unregistering Through the Database
Unregistering Through LDAP
Getting a Queue/Topic Connection Factory
Getting a Queue Connection Factory with JDBC URL
Getting a Queue Connection Factory with JDBC Connection Parameters
Getting a Topic Connection Factory with JDBC URL
Getting a Topic Connection Factory with JDBC Connection Parameters
Getting a Queue/Topic Connection Factory in LDAP
Getting a Queue/Topic in LDAP
Creating a Queue Table
Getting a Queue Table
Creating a Queue
Creating a Point-to-Point Queue
Creating a Publish/Subscribe Topic
Granting and Revoking Privileges
Granting Oracle Streams AQ System Privileges
Revoking Oracle Streams AQ System Privileges
Granting Publish/Subscribe Topic Privileges
Revoking Publish/Subscribe Topic Privileges
Granting Point-to-Point Queue Privileges
Revoking Point-to-Point Queue Privileges
Managing Destinations
Starting a Destination
Stopping a Destination
Altering a Destination
Dropping a Destination
Propagation Schedules
Scheduling a Propagation
Enabling a Propagation Schedule
Altering a Propagation Schedule
Disabling a Propagation Schedule
Unscheduling a Propagation

13 Oracle Streams AQ JMS Operational Interface: Point-to-Point

Creating a Connection
Creating a Connection with Username/Password
Creating a Connection with Default Connection Factory Parameters
Creating a Queue Connection
Creating a Queue Connection with Username/Password
Creating a Queue Connection with an Open JDBC Connection
Creating a Queue Connection with Default Connection Factory Parameters
Creating a Queue Connection with an Open OracleOCIConnection Pool
Creating a Session
Creating a QueueSession
Creating a QueueSender
Sending Messages
Sending Messages Using a QueueSender with Default Send Options
Sending Messages Using a QueueSender by Specifying Send Options
Creating a QueueBrowser
Queues with Text, Stream, Objects, Bytes or Map Messages
Queues with Text, Stream, Objects, Bytes, Map Messages, Locking Messages
Queues of Oracle Object Type Messages
Queues of Oracle Object Type Messages, Locking Messages
Creating a QueueReceiver
Queues of Standard JMS Type Messages
Queues of Oracle Object Type Messages

14 Oracle Streams AQ JMS Operational Interface: Publish/Subscribe

Creating a Connection
Creating a Connection with Username/Password
Creating a Connection with Default Connection Factory Parameters
Creating a TopicConnection
Creating a TopicConnection with Username/Password
Creating a TopicConnection with Open JDBC Connection
Creating a TopicConnection with Default Connection Factory Parameters
Creating a TopicConnection with an Open OracleOCIConnectionPool
Creating a Session
Creating a TopicSession
Creating a TopicPublisher
Publishing a Message
TopicPublisher with Minimal Specification
TopicPublisher and Specifying Correlation and Delay
TopicPublisher and Specifying Priority and TimeToLive
TopicPublisher and Specifying a Recipient List Overriding Topic Subscribers
Creating a Durable Subscriber
Creating a Durable Subscriber for a JMS Topic Without Selector
Creating a Durable Subscriber for a JMS Topic With Selector
Creating a Durable Subscriber for an Oracle Object Type Topic Without Selector
Creating a Durable Subscriber for an Oracle Object Type Topic With Selector
Creating a Remote Subscriber
Creating a Remote Subscriber for Topics of JMS Messages
Creating a Remote Subscriber for Topics of Oracle Object Type Messages
Unsubscribing a Durable Subscription
Unsubscribing a Durable Subscription for a Local Subscriber
Unsubscribing a Durable Subscription for a Remote Subscriber
Creating a TopicReceiver
Creating a TopicReceiver for a Topic of Standard JMS Type Messages
Creating a TopicReceiver for a Topic of Oracle Object Type Messages
Creating a TopicBrowser
Topics with Text, Stream, Objects, Bytes or Map Messages
Topics with Text, Stream, Objects, Bytes, Map Messages, Locking Messages
Topics of Oracle Object Type Messages
Topics of Oracle Object Type Messages, Locking Messages
Browsing Messages Using a TopicBrowser

15 Oracle Streams AQ JMS Operational Interface: Shared Interfaces

Oracle Streams AQ JMS Operational Interface: Shared Interfaces
AQjmsConnection.start
AQjmsSession.getJmsConnection
AQjmsSession.commit
AQjmsSession.rollback
AQjmsSession.getDBConnection
AQjmsConnection.getOCIConnectionPool
AQjmsSession.createBytesMessage
AQjmsSession.createMapMessage
AQjmsSession.createStreamMessage
AQjmsSession.createObjectMessage
AQjmsSession.createTextMessage
AQjmsSession.createMessage
AQjmsSession.createAdtMessage
AQjmsMessage.setJMSCorrelationID
Specifying JMS Message Property
AQjmsMessage.setBooleanProperty
AQjmsMessage.setStringProperty
AQjmsMessage.setIntProperty
AQjmsMessage.setDoubleProperty
AQjmsMessage.setFloatProperty
AQjmsMessage.setByteProperty
AQjmsMessage.setLongProperty
AQjmsMessage.setShortProperty
AQjmsMessage.setObjectProperty
Setting Default TimeToLive for All Messages Sent by a MessageProducer
Setting Default Priority for All Messages Sent by a MessageProducer
Creating an AQjms Agent
Receiving a Message Synchronously
Using a Message Consumer by Specifying Timeout
Using a Message Consumer Without Waiting
Specifying the Navigation Mode for Receiving Messages
Receiving a Message Asynchronously
Specifying a Message Listener at the Message Consumer
Specifying a Message Listener at the Session
Getting Message ID
AQjmsMessage.getJMSCorrelationID
AQjmsMessage.getJMSMessageID
Getting the JMS Message Properties
AQjmsMessage.getBooleanProperty
AQjmsMessage.getStringProperty
AQjmsMessage.getIntProperty
AQjmsMessage.getDoubleProperty
AQjmsMessage.getFloatProperty
AQjmsMessage.getByteProperty
AQjmsMessage.getLongProperty
AQjmsMessage.getShortProperty
AQjmsMessage.getObjectProperty
Closing and Shutting Down
AQjmsProducer.close
AQjmsConsumer.close
AQjmsConnection.stop
AQjmsSession.close
AQjmsConnection.close
Troubleshooting
AQjmsException.getErrorCode
AQjmsException.getErrorNumber
AQjmsException.getLinkString
AQjmsException.printStackTrace
AQjmsConnection.setExceptionListener
AQjmsConnection.getExceptionListener

16 Oracle Streams AQ JMS Types Examples

How to Run the Oracle Streams AQ JMS Type Examples
Setting Up the Examples
JMS Bytes Message Examples
JMS Stream Message Examples
JMS Map Message Examples
More Oracle Streams AQ JMS Examples

Part VI Internet Access to Oracle Streams AQ

17 Internet Access to Oracle Streams AQ

Overview of Oracle Streams AQ Operations over the Internet
Internet Data Access Presentation (IDAP)
SOAP Message Structure
The SOAP Envelope
SOAP Headers
The SOAP Body
SOAP Method Invocation
HTTP Headers
Method Invocation Body
Results from a Method Request
IDAP Documents
IDAP Client Requests for Enqueue
IDAP Client Requests for Dequeue
IDAP Client Requests for Registration
IDAP Client Requests to Commit a Transaction
IDAP Client Requests to Rollback a Transaction
IDAP Server Response to Enqueue
IDAP Server Response to a Dequeue Request
IDAP Server Response to a Register Request
IDAP Commit Response
IDAP Rollback Response
IDAP Notification
IDAP Response in Case of Error
SOAP and Oracle Streams AQ XML Schemas
SOAP Schema
IDAP Schema
Deploying the Oracle Streams AQ XML Servlet
Creating the Oracle Streams AQ XML Servlet Class
Compiling the Oracle Streams AQ XML Servlet
Configuring the Web server to Authenticate Users Sending POST Requests
Using HTTP
Authorizing Users to Perform Operations with Oracle Streams AQ Servlet
Registering the Oracle Streams AQ Agent
Mapping the Oracle Streams AQ Agent to Database Users
Database Sessions
Using an LDAP Server with an Oracle Streams AQ XML Servlet
Using HTTP to Access the Oracle Streams AQ XML Servlet
User Sessions and Transactions
Using HTTP and HTTPS for Oracle Streams AQ Propagation
High-Level Architecture
Setting Up for HTTP Propagation
Setting Up for Oracle Streams AQ Propagation over HTTP
Customizing the Oracle Streams AQ Servlet
Setting the Connection Pool Size
Setting the Session Timeout
Specifying the Style Sheet for All Responses from the Servlet
Callbacks Before and After Oracle Streams AQ Operations
Frequently Asked Questions: Using Oracle Streams AQ and the Internet
Internet Access Questions
Oracle Internet Directory Questions

Part VII Using Messaging Gateway

18 Introducing Oracle Messaging Gateway

Introducing Oracle Messaging Gateway
Oracle Messaging Gateway Features
Oracle Messaging Gateway Architecture
Administration Package DBMS_MGWADM
Oracle Messaging Gateway Agent
Oracle Database
Non-Oracle Messaging Systems
Propagation Processing Overview

19 Getting Started with Oracle Messaging Gateway

Oracle Messaging Gateway Prerequisites
Loading and Setting Up Oracle Messaging Gateway
Loading Database Objects into the Database
Modifying listener.ora for the External Procedure (Solaris Operating System 32-Bit Only)
Modifying tnsnames.ora for the External Procedure (Solaris Operating System 32-Bit Only)
Setting Up a mgw.ora Initialization File
Creating an Oracle Messaging Gateway Administration User
Creating an Oracle Messaging Gateway Agent User
Configuring Oracle Messaging Gateway Connection Information
Configuring Oracle Messaging Gateway in a RAC Environment
Setting Up Non-Oracle Messaging Systems
Setting Up for TIB/Rendezvous
Setting Up for WebSphere MQ Base Java or JMS
Verifying the Oracle Messaging Gateway Setup
Unloading Oracle Messaging Gateway
Understanding the mgw.ora Initialization File
mgw.ora Initialization Parameters
mgw.ora Environment Variables
mgw.ora Java Properties
mgw.ora Comment Lines

20 Working with Oracle Messaging Gateway

Configuring the Oracle Messaging Gateway Agent
Database Connection
Resource Limits
Starting and Shutting Down the Oracle Messaging Gateway Agent
Starting the Oracle Messaging Gateway Agent
Shutting Down the Oracle Messaging Gateway Agent
Oracle Messaging Gateway Agent Job Queue Job
Running the Oracle Messaging Gateway Agent on RAC
Configuring Messaging System Links
Creating a WebSphere MQ Base Java Link
Creating a WebSphere MQ JMS Link
Creating a TIB/Rendezvous Link
Altering a Messaging System Link
Removing a Messaging System Link
Views for Messaging System Links
Configuring Non-Oracle Messaging System Queues
Registering a Non-Oracle Queue
Registering a WebSphere MQ Base Java Queue
Registering a WebSphere MQ JMS Queue or Topic
Registering a TIB/Rendezvous Subject
Unregistering a Non-Oracle Queue
View for Registered Non-Oracle Queues
Configuring Oracle Messaging Gateway Propagation Jobs
Propagation Subscriber Overview
Creating an Oracle Messaging Gateway Propagation Subscriber
Creating an Oracle Messaging Gateway Propagation Schedule
Enabling and Disabling a Propagation Job
Resetting a Propagation Job
Altering a Propagation Subscriber and Schedule
Removing a Propagation Subscriber and Schedule

21 Oracle Messaging Gateway Message Conversion

Converting Oracle Messaging Gateway Non-JMS Messages
Overview of the Non-JMS Message Conversion Process
Oracle Messaging Gateway Canonical Types
Message Header Conversion
Handling Arbitrary Payload Types Using Message Transformations
Handling Logical Change Records
Message Conversion for WebSphere MQ
WebSphere MQ Message Header Mappings
WebSphere MQ Outbound Propagation
WebSphere MQ Inbound Propagation
Message Conversion for TIB/Rendezvous
TIB/Rendezvous Outbound Propagation
TIB/Rendezvous Inbound Propagation
JMS Messages
JMS Outbound Propagation
JMS Inbound Propagation

22 Monitoring Oracle Messaging Gateway

The Oracle Messaging Gateway Log File
Sample Oracle Messaging Gateway Log File
Interpreting Exception Messages in an Oracle Messaging Gateway Log File
Monitoring the Oracle Messaging Gateway Agent Status
The MGW_GATEWAY view
Oracle Messaging Gateway Irrecoverable Error Messages
Other Oracle Messaging Gateway Error Conditions
Monitoring Oracle Messaging Gateway Propagation
Oracle Messaging Gateway Agent Error Messages

Part VIII Using Oracle Streams with Oracle Streams AQ

23 Staging and Propagating with Oracle Streams AQ

Oracle Streams Event Staging and Propagation Overview
SYS.AnyData Queues and User Messages
SYS.AnyData Wrapper for User Messages Payloads
Programmatic Environments for Enqueue and Dequeue of User Messages
Enqueuing User Messages Using PL/SQL
Enqueuing User Messages Using OCI or JMS
Dequeuing User Messages Using PL/SQL
Dequeuing User Messages Using OCI or JMS
Message Propagation and SYS.AnyData Queues
User-Defined Type Messages
Managing an Oracle Streams Messaging Environment
Wrapping User Message Payloads in a SYS.AnyData Wrapper
Propagating Messages Between a SYS.AnyData Queue and a Typed Queue

24 Oracle Streams Messaging Example

Overview of Messaging Example
Prerequisites
Set Up Users and Create a SYS.AnyData Queue
Create the Enqueue Procedures
Configure an Apply Process
Configure Explicit Dequeue
Enqueue Events
Dequeue Events Explicitly and Query for Applied Events
Enqueue and Dequeue Events Using JMS

Part IX Troubleshooting Oracle Streams AQ

25 Troubleshooting Oracle Streams AQ

Debugging Oracle Streams AQ Propagation Problems
Oracle Streams AQ Error Messages

A Scripts for Implementing BooksOnLine

tkaqdoca.sql: Script to Create Users, Objects, Queue Tables, Queues, and Subscribers
tkaqdocd.sql: Examples of Administrative and Operational Interfaces
tkaqdoce.sql: Operational Examples
tkaqdocp.sql: Examples of Operational Interfaces
tkaqdocc.sql: Clean-Up Script

Glossary

Index