Mule ESB 3.6 - лучший способ конвертировать BufferedInputStream в XML

У меня есть проект Mule ESB с использованием HTTP Connector, где я хочу использовать XPath для разделения / маршрутизации XML.

Полезная нагрузка сообщения после коннектора HTTP - org.glassfish.grizzly.utils.BufferInputStream.

Каков наилучший способ преобразовать это в тип, где я могу использовать такой компонент, как «Splitter» или «Expression» (используя XPath), чтобы разделить / направить его?

«Объект в XML», похоже, не работает, а сплиттер не работает, когда полезной нагрузкой является строка (т. Е. С использованием объекта в строку после HTTP). Я бы предпочел не писать собственный преобразователь Java, если есть стандартные компоненты, которые могут это сделать?

поток

<http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/>
<file:connector name="File" autoDelete="true" streaming="true" validateConnections="true" doc:name="File"/>
<flow name="collectionsplitterFlow">
    <http:listener config-ref="HTTP_Listener_Configuration" path="/CollectionSplitter" doc:name="HTTP"/>
    <splitter expression="#[xpath3('//Order')]" doc:name="Splitter"/>
    <logger level="INFO" doc:name="Logger"/>
</flow>

XML для разделения

<?xml version="1.0" encoding="UTF-8"?>
<msglist>
    <msg>
        <Order>
            <Id>1</Id>
            <Description>Order 1</Description>
        </Order>
    </msg>
    <msg>
        <Order>
            <Id>2</Id>
            <Description>Order 2</Description>
        </Order>
    </msg>
</msglist>

Спасибо Дэвид

Ответы на вопрос(2)

Ваш ответ на вопрос