I spent a few hours (I think again) trying to implement a dynamic destination based on IN message using a Processor only to find out that it didn't work as I expected. Quite possible because I don't understand the full contract for what a processor component needs to do. I did find that using a bean() component worked, but I'd really like to avoid any reflection overhead involved. I simply need to filter the messages passed to a route so I can select the correct destination. I figured a processor was the way to do this, but simply adding a processor and setting the IN.header didn't work, actually it messed up the in message that ended up at the jms component (had null body, no headers).
Is the processor intended to set the out message, and that out message would then be used as the in message for the next step? I'm just looking for the most efficent way to implement "Reuse endpoint and send to different destinations computed at runtime" ( http://camel.apache.org/jms.html )... just a direct invocation that gets the Exchange (like a Processor does) w/o the bean introspection/invocation overhead. Can anyone advise on how to implement this? Thanks, --jason
