WebSphere Message Brokers
File: ac20802_
Writer: Terry Cowling

Reference topic

This build: July 31, 2007 21:19:27

TimeoutNotification node

This topic describes the TimeoutNotification node.

This topic contains the following sections:

Purpose

The TimeoutNotification node is an input node that can be used in two ways:

  • A TimeoutNotification node can be paired with one or more TimeoutControl nodes.

    The TimeoutNotification node processes timeout request messages that are sent by the TimeoutControl nodes with which it is paired, and propagates copies of the messages (or selected fragments of the messages) to the next node in the message flow.

  • A TimeoutNotification node can be used as a stand-alone node.

    Generated messages are propagated to the next node in the message flow at time intervals that are specified in the configuration of this node.

The TimeoutNotification node is contained in the Timer drawer of the palette, and is represented in the workbench by the following icon:

Timeout Notification node icon

Using this node in a message flow

Use a TimeoutControl node and a TimeoutNotification node together in a message flow for an application that requires events to occur at a particular time, or at regular intervals; for example, when you want a batch job to run every day at midnight, or you want information about currency exchange rates to be sent to banks at hourly intervals.

More than one TimeoutControl node can be used with a TimeoutNotification node. Timeout requests that are processed by those TimeoutControl nodes are all processed by the same TimeoutNotification node if the same Unique Identifier is used for the TimeoutNotification node and each of the TimeoutControl nodes.

When a TimeoutNotification node is started as a result of the broker starting, or by the message flow that contains the node starting, it scans its internal timeout store and purges any non-persistent timeout requests. Notifications are issued for any persistent timeout requests that are now past and that have the IgnoreMissed property set to False.

If you use a TimeoutNotification node to generate a WebSphere MQ message to an output node, such as theMQOutput node, provide a valid MQMD. You must provide a valid MQMD if the TimeoutNotification node is running in automatic mode (as a stand-alone node). If the TimeoutNotification node is running in controlled mode (that is, it is paired with one or more TimeoutControl nodes), you need to provide a valid MQMD only if the stored messages do not already have an MQMD. The following ESQL shows how to provide a valid MQMD:
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.Version = MQMD_CURRENT_VERSION;
SET OutputRoot.MQMD.Format = 'XML';
Look at the following sample for more details about how to use the timeout processing nodes: You can view samples only when you use the information center that is integrated with the Message Brokers Toolkit.

Configuring the TimeoutNotification node

When you have put an instance of the TimeoutNotification node into a message flow, you can configure it; see Configuring a message flow node. The properties of the node are displayed in the Properties view.

All mandatory properties for which you must enter a value (those that do not have a default value defined) are marked with an asterisk.

Configure the TimeoutNotification node as follows:
  1. Optional: On the Description tab, enter a short description, a long description, or both. You can also rename a node on this tab.
  2. On the Basic tab:
    1. In Unique Identifier, specify a value that is unique within the broker and is the same as the identifier that is specified for the TimeoutControl nodes with which this node is paired (if there are any). The maximum length of this identifier is 12 characters. Unique Identifier is the only mandatory property on this tab; it does not have a default value.
    2. Specify a value for Transaction Mode. This property affects the transactional control of the propagated timeout messages and can be set to one of the following values:
      • Select Yes, if you want a transaction to be started.
      • Select No, if you do not want a transaction to be started.
      • Select Automatic, only if you have set Operation Mode to Controlled. Whether a transaction is started depends on the persistence of the stored timeout requests, which is controlled by the value of Request Persistence in the TimeoutControl node with which it is paired.
    3. Specify a value for Operation Mode. This property indicates whether this node has any paired TimeoutControl nodes and can be set to one of the following values:
      • If you select Automatic, the node is not paired with any TimeoutControl nodes. The node generates timeout requests with an interval that is controlled by the setting of the Timeout Value property.
      • If you select Controlled, the node processes all timeout requests that have been stored by the TimeoutControl nodes with which it is paired.
    4. If Operation Mode is Automatic, specify a value for Timeout Interval, which specifies the interval (in seconds) between message propagation.
  3. On the Parser Options tab, Parse Timing is, by default, set to On Demand, which causes validation to be delayed until it is parsed by partial parsing. If you change this value to Immediate, partial parsing is overridden and everything in the message is parsed and validated, except for those complex types with a composition of Choice or Message that cannot be resolved at the time. If you change this value to Complete, partial parsing is overridden and everything in the message is parsed and validated; complex types with a composition of Choice or Message that cannot be resolved at the time cause a validation failure.
  4. On the Validation tab, set the validation properties if you want the XMLNSC or MRM parser to validate the body of messages against the dictionary that is generated from the message set. (If a message is propagated to the Failure terminal of the node, it is not validated.)

    For more information see Validating messages and Validation properties.

Terminals and properties

The terminals of the TimeoutNotification node are described in the following table.

Terminal Description
Failure The output terminal to which the message is propagated if a failure is detected during processing in this node. Nodes can be connected to this terminal to process these failures. If this terminal is not connected to another node, messages are not propagated and no logging or safe storage of data occurs.
Out The output terminal to which messages are propagated after timeouts expire.
  • If the TimeoutNotification node is running in Automatic mode (that is, there are no TimeoutControl nodes paired with this node), the propagated messages contain only a Properties folder and a LocalEnvironment that is populated with the timeout information.
  • If the TimeoutNotification node is running in Controlled mode (that is, TimeoutControl nodes that are paired with this node store timeout requests), the propagated messages contain what was stored by the TimeoutControl nodes, which might be entire request messages or fragments of them.
If the TimeoutNotification node is used as the input node to a message flow that generates a WebSphere MQ message (for example, by using an MQOutput node), the message flow must create the necessary MQ headers and data (for example, MQMD).
Catch The output terminal to which the message is propagated if an exception is thrown downstream. If this terminal is not connected to another node, the following events occur:
  1. The TimeoutNotification node writes the error to the local error log.
  2. The TimeoutNotification node repeatedly tries to process the request until the problem that caused the exception is resolved.

The following tables describe the node properties. The column headed M indicates whether the property is mandatory (marked with an asterisk if you must enter a value when no default is defined); the column headed C indicates whether the property is configurable (you can change the value when you add the message flow to the bar file to deploy it).

The Description properties of the TimeoutNotification node are described in the following table.

Property M C Default Description
Node name No No The node type The name of the node.
Short Description No No   A brief description of the node.
Long Description No No   Text that describes the purpose of the node in the message flow.

The Basic properties of the TimeoutNotification node are described in the following table.

Property M C Default Description
Unique Identifier Yes Yes None A value that is unique within the broker and that is the same as the identifier that is specified for the TimeoutControl nodes with which this node is paired (if there are any). The maximum length of this identifier is 12 characters.
Transaction Mode No No 'Yes' The transaction mode for the node. Valid values are Yes, No, and Automatic. If the transaction mode is Automatic, a transaction is based on the persistence of the stored messages, which is controlled by the Request Persistence property of the TimeoutControl node with which it is paired.
Operation Mode No No 'Automatic' This property indicates whether this node is paired with any paired TimeoutControl nodes. Valid values are Automatic and Controlled.
Timeout Interval No No 1 The interval (in seconds) between timeout requests. This property is relevant only if Operation Mode is set to Automatic.

The properties of the Parser Options for the TimeoutNotification node are described in the following table.

Property M C Default Description
Parse Timing Yes No On Demand This property controls when an input message is parsed. Valid values are On Demand, Immediate, and Complete.

For more information about this property see Parsing on demand.

Use MQRFH2C Compact Parser for MQRFH2 Domain No No Cleared This property controls whether the MQRFH2C Compact Parser, instead of the MQRFH2 parser, is used for MQRFH2 headers.
Use XMLNSC Compact Parser for XMLNS Domain Yes No Cleared This property controls whether the XMLNSC Compact Parser is used for messages in the XMLNS Domain. If you set this property, the message data appears under XMLNSC in nodes that are connected to the output terminal when the input RFH2 header or default properties Domain is XMLNS.
Retain Mixed Content Yes No None This property controls whether the XMLNSC parser creates elements in the message tree when it encounters mixed text in an input message. If you select the check box, elements are created for mixed text. If you clear the check box, mixed text is ignored and no elements are created.
Retain Comments Yes No None This property controls whether the XMLNSC parser creates elements in the message tree when it encounters comments in an input message. If you select the check box, elements are created for comments. If you clear the check box, comments are ignored and no elements are created.
Retain Processing Instructions Yes No None This property controls whether the XMLNSC parser creates elements in the message tree when it encounters processing instructions in an input message. If you select the check box, elements are created for processing instructions. If you clear the check box, processing instructions are ignored and no elements are created.

The Validation properties of the TimeoutNotification node are described in the following table.

For a full description of the validation properties see Validation properties.
Property M C Default Description
Validate Yes Yes None This property controls whether validation takes place. Valid values are None, Content, and Content And Value.
Failure Action Yes No Exception This property controls what happens if validation fails. You can set this property only if you set Validate to Content or Content and Value. Valid values are User Trace, Local Error Log, Exception, and Exception List.
Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 1999, 2007Copyright IBM Corporation 1999, 2007. All Rights Reserved.
This build: July 31, 2007 21:19:27

ac20802_ This topic's URL is: