I have to stop the camel route if the request ist bigger then 20 MB.
Normal i will think i have to intercept the incoming request stream and
buffer it all in to see the total size, then generate a new stream and hand
it to the SOAP service if desired. Sounds like a job for a filter to me.
But now am in camel... So i Thought maybe i could use
exchange.getIn().getBody();
exchange.getIn().getHeaders();
My route lookes like this:
from("cxf:bean:hubws?dataFormat=MESSAGE").streamCaching().onException(Exception.class)
.process(new
LogError()).end().bean(AddIpBean.class).bean(SetRoutingKey.class)
.bean(Util.class,
"setMiljo").multicast().to("direct:channel1", "direct:channel2",
"direct:channel3")
.aggregationStrategy(new
HubAggregationStrategy()).stopOnException();
Can i do this in a nice way ?
Frank
Normal i will think i have to intercept the incoming request stream and
buffer it all in to see the total size, then generate a new stream and hand
it to the SOAP service if desired. Sounds like a job for a filter to me.
But now am in camel... So i Thought maybe i could use
exchange.getIn().getBody();
exchange.getIn().getHeaders();
My route lookes like this:
from("cxf:bean:hubws?dataFormat=MESSAGE").streamCaching().onException(Exception.class)
.process(new
LogError()).end().bean(AddIpBean.class).bean(SetRoutingKey.class)
.bean(Util.class,
"setMiljo").multicast().to("direct:channel1", "direct:channel2",
"direct:channel3")
.aggregationStrategy(new
HubAggregationStrategy()).stopOnException();
Can i do this in a nice way ?
Frank