Content-based router (choice)
Routes the message to a different sub-route based on a predicate against the body or a header.$[?(@.field)] so missing fields don’t throw:
Parallel fan-out and aggregation with multicast
Sends the same exchange to multiple routes in parallel, then combines the results with an aggregation strategy.Splitter for collection iteration
Processes every element of a collection independently, optionally in parallel.Error recovery with doTry and doCatch
Use this for optional data extraction or any step that might throw but shouldn’t fail the whole route.Dead letter channel
Catch-all error redelivery for the whole connector. Add this before any route definitions inconfigure().