Am I wrong or an exception thrown in a Transformer (including header-enricher) is not propagated to the errorChannel?
I am using an errorChannel in an asynchronous flow. I am using header-enricher to compute the value of a header. The method computing the value throws an exception, but the message is not relayed to the error channel.
I replaced the header-enricher with my own Transformer working on the incoming Message object. The result was the same. Only when I used a Service Activator the exception was reaching the error channel.
BTW, is there any difference between a Transformer and a Service Activator? They look pretty much the same to me regarding their role - they handle input messages and return output messages.