After additional debugging, I have a hypothesis why my message goes to discarded queue. It gets discarded because it is not handled. And it is not handled because again, RSB cannot find a handler for it. Despite the fact that it found a message handler upon RSB start, it cannot find the same handler on message arrival. Arriving message handlers are searched for in DefaultServiceBus.GatherConsumers method. This function looks for message handlers for the actual message type, so it looks for components exposing interface ConsumerOf<ActualMessageType> (and probably base types of ActualMessageType). So it turns out I would have to register my message handler explicitly setting service interface to ConsumerOf<MyDearMessage> for RSB to work. Unfortunately, I don't know how to do it in winsor XML config, besides I'd rather not do it - so what else can be done?. So, lets return to the question: what if my component wants to handle several message types - it will have to implement ConsumerOf<> several times, but then will RSB correctly find the message handler on message arrival? I'm not so sure, but will leave testing to people with better knowledge of RSB. Waiting for your comments. I really need to use some service bus and would like to use RSB, but it's fighting back.
Regards RG --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Rhino Tools Dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rhino-tools-dev?hl=en -~----------~----~----~----~------~----~------~--~---
