Skip navigation.
Downloads | Product Documentation | Support

Administration Console Online Help

# Uniform Distributed Topic: Configuration: Redelivery

Configuration Options Related Tasks Related Topics

Use this page to define message delivery failure parameters, like specifying redelivery limits, selecting a message expiration policy, and specifying an error destination for undeliverable or expired messages.

For uniform distributed destinations (UDDs), the error destination must be another configured UDD that shares the same subdeployment (i.e., targets) as the current UDD. If no error destination is configured, then expired and undeliverable messages are simply deleted.

#### Configuration Options

Name | Description
--- | ---
Redelivery Delay Override | The delay, in milliseconds, before rolled back or recovered messages are redelivered, regardless of the RedeliveryDelay specified by the consumer and/or connection factory. Redelivered queue messages are put back into their originating destination; redelivered topic messages are put back into their originating subscription. The default value (-1) specifies that the destination will not override the RedeliveryDelay setting specified by the consumer and/or connection factory. Note: This attribute is dynamically configurable, but only incoming messages are impacted; stored messages are not impacted. Note: Changing the RedeliveryDelay override only affects future rollbacks and recovers, it does not affect rollbacks and recovers that have already occurred. MBean Attribute (Does not apply to application modules): `DeliveryParamsOverridesBean.RedeliveryDelay` Minimum value: `-1` Maximum value: `9223372036854775807`
Redelivery Limit | The number of redelivery tries a message can have before it is moved to the error destination. This setting overrides any redelivery limit set by the message sender. If the redelivery limit is configured, but no error destination is configured, then persistent and non-persistent messages are simply dropped (deleted) when they reach their redelivery limit. The default value (-1) specifies that the destination will not override the message sender's redelivery limit setting. Note: The number of times a message has been redelivered is not persisted. This means that after a restart, the number of delivery attempts on each message is reset to zero. This attribute is dynamically configurable, but only incoming messages are impacted; previously sent messages continue to use their original redelivery limit. MBean Attribute (Does not apply to application modules): `DeliveryFailureParamsBean.RedeliveryLimit` Minimum value: `-1` Maximum value: `2147483647`
Expiration Policy | The message Expiration Policy to use when an expired message is encountered on a destination. The valid expiration policies are: None - Same as the Discard policy; expired messages are simply removed from the destination. Discard - Removes expired messages from the messaging system. The removal is not logged and the message is not redirected to another location. If no value is defined for a given destination (i.e., None), then expired messages are discarded. Log - Removes expired messages from the system and writes an entry to the server log file indicating that the messages have been removed from the system. The actual information that is logged is defined by the Expiration Logging Policy. Redirect - Moves expired messages from their current location to the Error Destination defined for the destination. The message retains its body, and all of its properties. The message also retains all of its header fields, but with the following exceptions: The destination for the message becomes the error destination. All property overrides associated with the error destination are applied to the redirected message. If there is no Time-To-Live Override value for the error destination, then the message receives a new Expiration Time of zero (indicating that it will not expire again). It is illegal to use the Redirect policy when there is no valid error destination defined for the destination. Similarly, it is illegal to remove the error destination for a destination that is using the Redirect policy. Note: The Maximum Message quota is only enforced for sending new messages. It is ignored when moving messages because of the Redirect policy. MBean Attribute (Does not apply to application modules): `DeliveryFailureParamsBean.ExpirationPolicy`
Expiration Logging Information | The policy that defines what information about the message is logged when the Expiration Policy is set to Log. The valid logging policy values are: %header% - All JMS header fields are logged. %properties% - All user-defined properties are logged. JMSDeliveryTime - This WebLogic JMS-specific extended header field is logged. JMSRedeliveryLimit - This WebLogic JMS-specific extended header field is logged. foo - Any valid JMS header field or user-defined property is logged. When specifying multiple values, enter them as a comma-separated list. The `%header%` and `%properies%` values are not case sensitive. For example, you could use `"%header%,%properties%"` for all the JMS header fields and user properties. However, the enumeration of individual JMS header fields and user-defined properties are case sensitive. To enumerate only individual JMS header fields you could use `"%header, name, address, city, state, zip"`. Note: The `JMSMessageID` field is always logged and cannot be turned off. Therefore, if the Expiration Logging Policy is not defined (i.e., null) or is defined as an empty string, then the output to the log file contains only the `JMSMessageID` of the message. MBean Attribute (Does not apply to application modules): `DeliveryFailureParamsBean.ExpirationLoggingPolicy`
Error Destination | The name of the target error destination for messages that have expired or reached their redelivery limit. If no error destination is configured, then such messages are simply dropped. If a message has expired or reached its redelivery limit, and the Expiration Policy is set to Redirect, then the message is moved to the specified Error Destination. For standalone destinations, an error destination must be another standalone destination that is targeted to the same JMS server as the destinations for which the error destination is defined. For uniform distributed destinations (UDDs), the error destination must be a another UDD that shares the same subdeployment (i.e., targets) as the current UDD. This attribute is dynamically configurable, but only incoming messages are impacted; stored messages are not impacted. MBean Attribute (Does not apply to application modules): `DeliveryFailureParamsBean.ErrorDestination`

Related Tasks

- Create uniform distributed topics in a system module
- Uniform distributed topics - configure delivery failure parameters

Related Topics

- Configuring and Managing WebLogic JMS
- Programming WebLogic JMS