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>