Skip navigation.

Administration Console Online Help

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents Index


JMS Topic --> Configuration --> Expiration Policy

Tasks     Related Topics     Attributes


This tab defines the action that a topic destination should take when an expired message is found: discard the message, discard the message and log its removal, or redirect the message to an error destination.

Note: You configure queues explicitly or by configuring a JMS template that can be used to define multiple queues with similar attribute settings, as described in JMS Template Tasks.


Creating a JMS Topic

Handling Expired Messages

Related Topics

"WebLogic JMS Fundamentals" in Programming WebLogic JMS

"Managing WebLogic JMS" in Programming WebLogic JMS

"Developing a WebLogic JMS Application" in Programming WebLogic JMS


Table 47-1

Attribute Label


Value Constraints

Expiration Policy

An optional policy to use when expired messages are found on a topic destination.

None - If a JMS template is specified for this topic, then None means that the policy is inherited from the template. Otherwise, None is equivalent to Discard.

Discard - Removes expired messages from the messaging system. The removal is not logged and the message is not redirected to another location.

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 some 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 set 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 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.


Attribute: ExpirationPolicy

Valid values:

  • Discard

  • Log

  • Redirect

Dynamic: yes

Expiration Logging Policy

The policy that defines what information about the message is logged when the Expiration Policy on this topic is set to Log. The valid logging policy values are:

  • %header% - All the JMS header fields are logged.

  • %properties% - All the user 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 property is logged.

When using multiple property values, enter them as a comma-separated list. The %header% and %properies% values are not case sensitive. For example, you can use "%header%,%properties%" for all the JMS header fields and user properties. However, the enumeration of individual JMS header fields and user 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 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.


Attribute: ExpirationLoggingPolicy

Dynamic: yes


Skip navigation bar  Back to Top Previous Next