I am new to Spring Integration and I'm trying to figure out how the error handling works. I have a service method to perform a chunk of work, and this service method can throw an exception. I use a splitter to generate a separate message for each chunk of work to be done, which then gets relayed to my service method via a service-activator. Under "linear" configuration (more on this in a minute), I can see that an exception in the service method gets sent to the error channel. However, I have many chunks of work to be done, and so I use a task-executor with a pool so that the service method is invoked concurrently. Under this configuration, the error channel does not seem to receive any error messages. The way I am drawing this conclusion is because I set up a channel-adapter on the error channel to just print out when a message is received. Is this to be expected?