In the current release if a mediator in the inSequence returns false, inSequence will stop executing further mediators in the inSequence. But it will forward the message to the given target/endpoint even when the inSequence returns false. That is why the response from the endpoint goes through the outSequence.
This has been fixed in the Synapse trunk now. If the inSequence returns false, Synapse will not forward the message to target/endpoint now. Thanks. Upul Ok, It will stop further mediation, but does this imply that all > following sequences are stopped? I have a case where I return false from > my mediate-method(), but the outSequence is also executed. > Stacktrace and synapse config is attached... > I give back a false in the mediate-method of the > roleBasedRouting-mediator, but Synapse tries to send the message to the > endpoint. So I can only stop the outSequence by throwing an exception, > right? > Does the false only influences execution of mediators in the same > sequence? The log mediator (mark bold in the config below) after the > rolebased mediator will not be executed... >
