XPathMessageSplitter
supports messages with either
String
or Document
payloads.
The splitter uses the provided XPath expression to split the payload into a number of
nodes. By default this will result in each Node
instance
becoming the payload of a new message. Where it is preferred that each message be a Document
the createDocuments
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. The XPath splitter implements MessageHandler
and should
therefore be configured in conjunction with an appropriate endpoint (see the namespace support below
for a simpler configuration alternative).
<bean id="splittingEndpoint" class="org.springframework.integration.endpoint.SubscribingConsumerEndpoint"> <constructor-arg> <bean class="org.springframework.integration.xml.splitter.XPathMessageSplitter"> <constructor-arg value="/order/items" /> <property name="documentBuilder" ref="customisedDocumentBuilder" /> <property name="outputChannel" ref="orderItemsChannel" /> </bean> </constructor-arg> <constructor-arg ref="orderChannel" /> </bean>