XPath splitter
Uses an XPath expression to split a message into multiple messages.
The splitter uses the provided XPath expression to split the payload into a number of nodes. By default this will result in each Node becoming the payload of a new message.
Where it is preferred that each message be a XML Document the Create documents flag can be set. Where a String payload is passed in the payload will be converted then split before being converted back to a number of String messages.
This splitter supports messages with either String or XML document payloads.
Create documents
Set this flag to true
to convert each resuling Node
to a Document
before sending replies from this splitter.
Default is false
.
Iterator
The iterator mode: true
(default) to return an java.util.Iterator
for splitting the payload, false
to return a java.util.List
.
Be aware that in iterator mode the sequenceSize
header will always be set to 0
, because the splitter does not have access to the underlying items.
Note: the list contains transformed nodes whereas with the iterator each node is transformed while iterating.
Default is true
.
Namespace URI of the XML nodes in the XPath expression.
Optional, but required when namespace prefix is set
Example:
XPath expression : /ns1:one/@type
Namespace prefix : ns1
Namespace URI: http://www.example.org
Namespace prefix of the XML nodes in the XPath expression
Optional, but required when namespace URI is set
Example:
XPath expression : /ns1:one/@type
Namespace prefix : ns1
Namespace URI: http://www.example.org
XPath expression that returns a value (boolean or string) used for filtering the message. In case of a boolean value, true
accepts the message and false
discards it. In case of a string value, this decision depends on the value of the match value and match type settings.
Required
Example:
XPath expression : /ns1:one/@type
Namespace prefix : ns1
Namespace URI: http://www.example.org
Output channel
Channel where output messages should be sent after (successfully) processing the input message.
You can select the nullChannel
here to silently drop the output messages.
Required
Apply sequence
Set this flag to false
to prevent adding sequence related headers in this splitter. This can be convenient in cases where the set sequence numbers conflict with downstream custom aggregations. When true
, existing correlation and sequence related headers (correlationId
, sequenceNumber
and sequenceSize
) are pushed onto a stack; downstream components, such as aggregators may pop the stack to revert the existing headers after aggregation.
Default is true
.
Input channel
Channel to consume the input messages from.
Required
Id
Name that uniquely identifies this flow component.
Required