6 Response Retry
This route makes repetitive attempts to send the message to the client. If the route is not able to store a message at the first attempt, XEServer makes 3 more attempts to store the message (the number of attempts is controlled by the XEServer environment property ${RetryCountNum}), and if this fails, XEServer stores the message for further investigation
There are two ways to start the processing on this route: either manually or by timer. To activate the route processing manually and to disable route activation by timer, set the XEServer environment property ${TimerEnabled} to false and copy the file trigger.txt from the directory ${XESProfileConfig}/samples to the directory ${XESWorkspace}/test-data/Inbound/TriggerManual_ReplayDS.
Route Structure
Route Components Description
|
ManualTrigger
|
FS Inbound |
Picks up a sample file from the file system to initiate the route processing. To do this, drop the sample file ${XESProfileConfig}/samples/trigger.txt to ${XESWorkspace}/test-data/Inbound/TriggerManual_ReplayDS and set the XEServer environment property ${TimerEnabled} to false. |
| Timer Reporting
|
Timer Reporting |
Emits a trigger signal every 4 seconds to initiate route processing. |
| TimerEnabled?
|
Router |
Conducts timer signals if the XEServer property TimerEnabled is set to true. |
| Retry
|
FS Inbound |
Once the component receives a trigger signal (either manual or generated by a timer), the component picks up data from the 2 Sample_Route. Note The component works in the By command activation mode, which means that the component waits for a signal to pick up data from the source folder. |
| Msg Stored DS
|
Router |
Splits the message flow by checking the XEServer property Storage. |
| Primary, Secondary |
Data Storage Outbound |
The components store messages in Data Storage (either primary or secondary) using the XEServer property REPLAY_ID. |
| CPRetryIn
|
FS Inbound |
When the route starts, the component scans the directory ${XESWorkspace}/test-data/outbound/Exchange/CPRetry}. This directory contains messages that come from the CPRetry Checkpoint's error output. |
| CPDSRetry
|
Checkpoint |
Creates a checkpoint in the processing flow. If there is an error further down the route, the component rolls back the processing to the checkpoint position and attempts a retry. If the number of attempts exceeds the component's Retry limit value, the component directs the message to the component's error output. |
| WithinRetryLimit
|
Router |
Splits the data flow based on whether the current checkpoint retry attempt number is lower than the ${RetryCountNum} value. If the number of attempts exceeds the value, the component sends the message to the archive (Retry Error) for further investigation.
|
| CPRetryOut
|
FS Inbound |
Stores messages for another delivery attempt. |
| JMS NO Error
|
Router |
Determines the destination for the message by checking the XEServer property ${JMS_Secondary--JMS_Good_Enabled_and_JMS_Bad_Disabled}. |
| Secondary Good, Secondary Bad |
JMS Outbound |
The components send messages to 1 Client Route. Note that the components use different XEServer Data Storage services.
Tip The combination of the JMS Secondary Good, JMS Secondary Bad and JMS NO Error components emulates the work of a single JMS component in the Error or No Errors mode based on the value of the XEServer environment property ${JMS_Secondary--JMS_Good_Enabled_and_JMS_Bad_Disabled}
|