I have come across a situation (with the synapse sample #4) where the try mediator will not work with non-blocking transports anymore. I think it seems to the user that it would be able to block and detect any errors during a send operation and then execute the onError and finally sequences if something goes wrong - but in reality the connection and transmission of a message takes place on one or more different threads.

<try>
       <send>
           <endpoint ref="bogus"/>
       </send>
   <onError>
       mediator+
   </onError>
   <finally>
       mediator+
   </finally>
</try>

So the possibilities for this issue as I think is to state that the try mediator does not support send, though it will work for transforms and other such same-thread mediators.. a possible way to detect a connection refused, timeout or IO error during send would be to keep a copy of the outgoing message and the current sequences' error handler sequence in a callback that gets notified by the transport on errors - so that such an error 'sequence' could be executed once an exception is detected...

your thoughts and suggestions are welcome

asankha

dscdscs

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to