I tried using both xml message filter and xml message splitting but both seemed to fail when using an incoming file endpoint. I had to turn off streaming on the file transport to get them to work.
This problem may also affect many other filters/splitters.
If the payload is not a org.dom4j.Document or a String the payload is considered not to be XML apart from that fact that streaming isn't supported.
We need to review filters and routers for streaming compliance
I think we need to be able to deal with both InputStream and XML stream types. Also it might be worth working out how/where OutputHandler is used and if we need to handler this type also or not.