Hello!

I've encountered unexpected behaviour while modelling some routes. When
simplified it can be described as follows:

<camel:routeContext id="channel-routes"
xmlns="http://camel.apache.org/schema/spring";>
                <camel:route id="xyz" streamCache="true">
                        <from id="cxf-endpoint-v2.0" 
uri="cxf:bean:f5-soap?dataFormat=PAYLOAD" />
                        <camel:log id="log-1" message="${body}" />
                        <camel:to uri="direct:d-v2.0" />
                        ...
                 </camel:route>

                 <camel:route id="dummy-v2.0" streamCache="true">
                        <camel:from uri="direct:d-v2.0" />
                        <camel:log id="log-2" message="${body}"/>
                        <camel:filter id="filter-v2.0">
                                <camel:xpath>boolean(//v20:xxx)</camel:xpath>
                                <camel:enrich uri="xslt:classpath:/xslt/a.xslt" 
strategyRef="myStrategy"
/>
                        </camel:filter>
                        ...
                </camel:route>
</camel:routeContext>

Exchange will fail due to closed stream (aggregated in CxfPayload), because
it is not wrapped in StreamCache. Ofc adding <camel:convertBodyTo
type="java.io.InputStream" /> for example before "log-1" will make stream
cache work as it should. Any way is it desired behaviour of CxfPayload which
contains a stream?

Robert



--
View this message in context: 
http://camel.465427.n5.nabble.com/CxfPayload-and-streamCache-tp5736991.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to