This is the latest release in the 6.x.x family. For EI 7.0.0, click here.

All docs This doc

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PropertyDescription
FOREACH_ORIGINAL_MESSAGE

This contains the original envelop of the messages split by the ForEach mediator. 

Value specified for ForEach ID will be prefixed to this property. For example, if you have specified ForEach Id as 'Id1' then you should refer to FOREACH_COUNTER as Id1_FOREACH_ORIGINAL_MESSAGE

FOREACH_COUNTER

This contains the count of the messages processed. The message count increases during each iteration.

Value specified for ForEach ID will be prefixed to this property. For example, if you have specified ForEach Id as 'Id1' then you should refer to FOREACH_COUNTER as Id1_FOREACH_COUNTER

Note
Excerpt

Iterate Mediator is quite similar to the ForEach mediator. You can use complex XPath expressions to conditionally select elements to iterate over in both mediators. Following are the main difference between ForEach and Iterate mediators:

  • Use the ForEach mediator only for message transformations. If you need to make back-end calls from each iteration, then use the iterate mediator.
  • ForEach supports modifying the original payload. You can use Iterate for situations where you send the split messages to a target and collect them by an Aggregate in a different flow
  • You need to always accompany an Iterate with an Aggregate mediator. ForEach loops over the sub-messages and merges them back to the same parent element of the message.
  • In Iterate you need to send the split messages to an endpoint to continue the message flow. However, ForEach does not allow using CallSend and Callout mediators in the sequence.
  • ForEach does not split the message flow, unlike Iterate Mediator. It guarantees to execute in the same thread until all iterations are complete.

When you use ForEach mediator, you can only loop through segments of the message and do changes to a particular segment. For example, you can change the payload using payload factory mediator. But you cannot send the split message out to a service. Once you exit from the ForEach loop, it automatically aggregates the split segments. This replaces the ForEach function of the complex XSLT mediators using a ForEach mediator and a Payload Factory mediator. However, to implement the split-aggregate pattern, you still need to use Iterate mediator.

...