JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Java CAPS JMS Reference     Java CAPS Documentation
search filter icon
search icon

Document Information

Java CAPS JMS Reference

Introduction to JMS

JMS and Java CAPS

Java Message Service

JMS Message Servers

JMS Message Destinations

JMS Clients

JMS Object Type Definitions

JMS Library File

Implementing JMS in Java CAPS Projects

Integration Model

To Implement JMS Following the Java CAPS Model

Creating and Configuring Message Destinations

Creating OTDs and Collaborations

Configuring JMS Clients

Configuring Message Servers

Creating Component Mappings

Using the JMS OTD in Collaboration Definitions

Using JMS Messages in Collaboration Definitions

Inside the JMS IQ Manager

JMS Messaging Features

Message Delivery Order

Message Producer Priorities

Distributed Transactions

Security

Runtime Management

JMS IQ Manager Database

Database Files

Database Location

Database Configuration and Operation

Message Processing Order

JMS IQ Manager Delivery Modes

Fully Concurrent Processing

Protected Concurrent Processing

Fully Serialized Processing

Serial Processing Across a Destination Group

JMS Client Delivery Modes

Message Producer Priorities

Message Redelivery and Redirection

Redelivery Options

Progressive Delay

Example 1

Example 2

Delay and Redirect

Example 3

Example 4

Delay and Delete

Example 5

Specifying Redelivery Options in the JMS IQ Manager

Specifying Redelivery Options in a JMS Client

Enqueued Message Properties

Enqueue Time

Sequence Number

Performance Issues

Throttling Producers

Example of Producer Throttling and Unthrottling

JMS Object Type Definitions

Message Types

JMS Message Properties

JMS Message Header Properties

Additional JMS Message Properties

JMS OTD Methods

createBytesMessage()

Description

Parameters

Return Value

Exceptions

createBytesMessage(msg)

Description

Parameters

Return Value

Exceptions

createMapMessage()

Description

Parameters

Return Value

Exceptions

createMessage()

Description

Parameters

Return Value

Exceptions

createMessage(msg)

Description

Parameters

Return Value

Exceptions

createStreamMessage()

Description

Parameters

Return Value

Exceptions

createTextMessage()

Description

Parameters

Return Value

Exceptions

createTextMessage(msg)

Description

Parameters

Return Value

Exceptions

getDeliveryMode()

Description

Parameters

Return Value

Exceptions

getDestination()

Description

Parameters

Return Value

Exceptions

Also Accessible From

getMessageServerURL()

Description

Parameters

Return Value

Exceptions

getPriority()

Description

Parameters

Return Value

Exceptions

getTimeToLive()

Description

Parameters

Return Value

Exceptions

receive(timeout)

Description

Parameters

Return Value

Exceptions

receive(timeout, destination)

Description

Parameters

Return Value

Exceptions

receiveNoWait()

Description

Parameters

Return Value

Exceptions

receiveNoWait(destination)

Description

Parameters

Return Value

Exceptions

requestReply(message)

Description

Parameters

Return Value

Exceptions

requestReply(timeout, message)

Description

Parameters

Return Value

Exceptions

requestReplyTo(message, destName)

Description

Parameters

Return Value

Exceptions

requestReplyTo(timeout, message, destName)

Description

Parameters

Return Value

Exceptions

send(message)

Description

Parameters

Return Value

Exceptions

send(message, deliveryMode, priority, timeToLive)

Description

Parameters

Return Value

Exceptions

sendBytes(payload)

Description

Parameters

Return Value

Exceptions

sendBytes(payload, deliveryMode, priority, timeToLive)

Description

Parameters

Return Value

Exceptions

sendBytesTo(payload, destination)

Description

Parameters

Return Value

Exceptions

sendBytesTo(payload, destination, deliveryMode, priority, timeToLive)

Description

Parameters

Return Value

Exceptions

sendText(payload)

Description

Parameters

Return Value

Exceptions

sendText(payload, deliveryMode, priority, timeToLive)

Description

Parameters

Return Value

Exceptions

sendTextTo(payload, destination)

Description

Parameters

Return Value

Exceptions

sendTextTo(payload, destination, deliveryMode, priority, timeToLive)

Description

Parameters

Return Value

Exceptions

sendTo(message, destination)

Description

Parameters

Return Value

Exceptions

sendTo(message, destination, deliveryMode, priority, timeToLive)

Description

Parameters

Return Value

Exceptions

setDeliveryMode(arg0)

Description

Parameters

Return Value

Exceptions

setDestination(arg0)

Description

Parameters

Return Value

Exceptions

Also Accessible From

setMessageServerURL(arg0)

Description

Parameters

Return Value

Exceptions

setPriority(arg0)

Description

Parameters

Return Value

Exceptions

setTimeToLive(arg0)

Description

Parameters

Return Value

Exceptions

JMS Message Methods

countMapMessage()

Description

Parameters

Return Value

Exceptions

countStreamMessage()

Description

Parameters

Return Value

Exceptions

countUserProperty()

Description

Parameters

Return Value

Exceptions

getBytesMessage()

Description

Parameters

Return Value

Exceptions

getJMSMessageType()

Description

Parameters

Return Value

Exceptions

getMapMessage()

Description

Parameters

Return Value

Exceptions

getMapMessage(arg0)

Description

Parameters

Return Value

Exceptions

getMessageProperties()

Description

Parameters

Return Value

Exceptions

getStreamMessage()

Description

Parameters

Return Value

Exceptions

getStreamMessage(arg0)

Description

Parameters

Return Value

Exceptions

getTextMessage()

Description

Parameters

Return Value

Exceptions

getUserProperty()

Description

Parameters

Return Value

Exceptions

getUserProperty(arg0)

Description

Parameters

Return Value

Exceptions

retrieveBytesFromMessage()

Description

Parameters

Return Value

Exceptions

retrieveBytesFromMessage(arg0)

Description

Parameters

Return Value

Exceptions

retrieveMapMessage(arg0)

Description

Parameters

Return Value

Exceptions

retrieveMapMessageList()

Description

Parameters

Return Value

Exceptions

retrieveStringFromMessage()

Description

Parameters

Return Value

Exceptions

retrieveStringFromMessage(arg0)

Description

Parameters

Return Value

Exceptions

retrieveUserProperty(arg0)

Description

Parameters

Return Value

Exceptions

retrieveUserPropertyList()

Description

Parameters

Return Value

Exceptions

setBytesMessage(arg0)

Description

Parameters

Return Value

Exceptions

setJMSMessageType(arg0)

Description

Parameters

Return Value

Exceptions

setStreamMessage(arg0, arg1)

Description

Parameters

Return Value

Exceptions

setTextMessage(arg0)

Description

Parameters

Return Value

Exceptions

storeMapMessage(arg0, arg1)

Description

Parameters

Return Value

Exceptions

storeUserProperty(arg0, arg1)

Description

Parameters

Return Value

Exceptions

getTimeToWait()

Description

Parameters

Return Value

Exceptions

setTimeToWait(arg0)

Description

Parameters

Return Value

Exceptions

JMS Client Configuration

Categories

Consumers

Action

Allowed Values

Default Value

Concurrency

Default Value

Delay

Allowed Values

Default Value

Durable Subscriber Name

Durability

Allowed Values

Default Value

Message Selector

Move/Delete After N Times

Allowed Values

Default Value

Move to Queue/Topic

Allowed Values

Default Value

Move to Destination Name

Allowed Values

Default Value

Server Session Batch Size

Server Session Pool Size

Allowed Values

Default Value

Producers

Delivery Mode

Default Value

Idle Timeout

Default Value

Maximum Pool Size

Default Value

Maximum Wait Time

Default Value

Priority

Allowed Values

Default Value

Steady Pool Size

Default Value

Transaction Mode

Allowed Values

Default Value

JMS IQ Manager Runtime Configuration

Accessing the Configuration Properties

Configuration Properties Interface

Stable Storage Page

Segment Properties

Data Directory

Default Location

Block Size

Allowed Values

Default Value

Segment Size

Allowed Values

Default Value

Minimum Number of Segments

Allowed Values

Default Value

Maximum Number of Segments

Allowed Values

Default Value

Sync to Disk

Default Condition

Journaling and Expiration Properties

Enable Message Expiration

Maximum Lifetime

Default Value

Enable Journal

Default Condition

Journaling Maximum Lifetime

Default Value

Journal Directory

Allowed Values

Default Value

Messaging Behavior Page

Throttling Properties

Per-Destination Throttling Threshold

Allowed Values

Default Value

Server Throttling Threshold

Allowed Values

Default Value

Throttling Lag

Allowed Values

Default Value

Special FIFO Mode Properties

Fully Serialized Queues

Allowed Values

Protected Concurrent Queues

Allowed Values

FIFO Expiration Time

Default Value

Time Dependency Properties

Allowed Values

Access Control Page

Security Options

Default Condition

Diagnostics Page

Diagnostic Properties

Logging Level

Default Setting

Logging Level of Journaler

Default Condition

Maximum Log File Size

Allowed Values

Default value

Number of Backup Log Files

Allowed Values

Default value

Miscellaneous Page

Enable Alert Option

Default Condition

JMS Provider Management

Overview of MS Control Utility Features

MS Control Utility Details

Flags and Arguments

Syntax

Using the MS Control Utility

To Change Message Contents

To Create a Backup Archive File

To Access an Archive File

To Set the MS Control Utility Timeout Period

To Shut the Server Down

Command/Response Examples

Message Server Example

Message Destination (Queue) Examples

Message Destination (Topic) Examples

Message Examples

Troubleshooting

Timestamp Errors

Index

Messaging Behavior Page

You can set the following properties on the Messaging Behavior page:

Throttling Properties

Figure 19 Throttling Properties Panel

image:Screen capture showing Throttling properties options.

As described in Performance Issues, you can use the JMS IQ Manager as a semi-permanent storage medium only if you have sufficient memory and disk resources. To manage the memory and disk resources needed by the JMS IQ Manager, you use the publisher throttling feature. You can specify several properties for throttling, as described in the following sections:

Per-Destination Throttling Threshold

The Per-Destination Throttling Threshold property specifies the maximum number of messages per topic or queue after which all producers of the message destination are throttled, assuming the Server Throttling Threshold has been exceeded. Once a producer is throttled, the JMS IQ Manager stops reading messages from it until the number of undelivered messages in the affected destination has dropped to less than the difference between the value specified by the Per-Destination Throttling Threshold and the value specified by the Throttling Lag. See also Throttling Lag.

Allowed Values

An integer from 0 through 999,999,999 indicating the number of messages. If you specify 0, the publishers are never throttled.

Default Value

The default is 1000 messages.

Server Throttling Threshold

The Server Throttling Threshold property specifies the total number of messages for all message destinations combined before the JMS IQ Manager starts throttling any producers. For a detailed explanation and an example, see Throttling Producers.

Allowed Values

An integer from 0 through 999,999,999 indicating the number of messages. If you specify 0, no producers are ever throttled.

Default Value

The default is 100,000 messages.

Throttling Lag

Use the Throttling Lag property in combination with the Per-Destination Throttling Threshold property. Once a producer is throttled, the JMS IQ Manager stops reading messages from it until the number of undelivered messages in the affected destination has dropped to less than the difference between the value specified by the Per-Destination Throttling Threshold and the value specified by the Throttling Lag. See also Per-Destination Throttling Threshold.

Allowed Values

An integer from 0 through 99,999,999. The value must be less than that of the Per-Destination Throttling Threshold property.

Default Value

The default is 100 messages.

Special FIFO Mode Properties

Figure 20 Special FIFO Modes Properties Panel

image:Screen capture showing Special FIFO Modes properties options.

As described in Message Delivery Order, the JMS IQ Manager allows three different FIFO delivery modes: fully concurrent, protected concurrent, or fully serialized. By default, all message destinations use the fully concurrent delivery mode. For more information, see Figure 5.

In fully concurrent mode, receivers can retrieve messages from a destination only when all other messages have been received or are in the process of being received. Receivers can then commit messages without restrictions. As a result, messages can be committed out of sequence, which is not always desirable.

In the Special FIFO Modes panel, you can specify alternate properties for delivery order, as described in the following sections:

Fully Serialized Queues

The Fully Serialized Queues property specifies which queues are fully serialized. In fully serialized mode, receivers can only retrieve messages after all previous messages for the message destination have been received and committed.

To implement serialized mode across multiple application servers, you must set the JMS clients for the consumers involved to serial mode. For more information, refer to Concurrency.

Allowed Values

A list of existing queue names.

Protected Concurrent Queues

The Fully Concurrent Queues property specifies which queues use protected concurrent FIFO delivery mode. In protected concurrent mode, a receiver can retrieve messages just as in fully concurrent mode (only after all messages have been received or are being received), but messages can only be committed if all previous messages have been committed.

Allowed Values

A list of existing queue names.

FIFO Expiration Time

The FIFO Expiration Time property specifies the maximum amount of time to delay a commit request in special FIFO mode.

Default Value

The default FIFO mode expiration time is 604800 seconds (168 hours).

Time Dependency Properties

Figure 21 Time Dependency Properties Panel

image:Screen capture showing Time Dependency properties options.

By default, messages are processed by and delivered to Collaborations in the order in which they were committed to their destination, independent of messages associated with any other destination. Setting a specific time dependency causes the message processing order to be dependent on messages associated with other destinations. These destinations are specified using the Time Dependency Topics and Time Dependency Queues properties.

Messages associated with any of the destinations in the time dependency group are ordered in fully serialized mode. In other words, a message associated with a destination in this group is processed only after all older messages associated with any other destination in the time dependency group have been processed.


Note - Message properties such as JMS priority have no effect when time dependency is used.


For a general overview of message processing order, refer to Message Delivery Order.

Allowed Values

A list of queue or topic names.

If you specify a message destination that does not exist, Enterprise Manager enables time-based order for all other destinations and ignores the unknown name. This feature enables you to add topics and queues in your project at a later time.


Note - When you specify time dependency, you cannot use a colon (:) or semicolon (;) in topic or queue names because they are already used for the time dependency value.