开发者

Rhino.Esb "Could not find no message owner for "

开发者 https://www.devze.com 2023-02-08 06:42 出处:网络
I have some services which i want to be able to publish and subscribe to messages from. I have a backend bus console app which has the following configuration:

I have some services which i want to be able to publish and subscribe to messages from.

I have a backend bus console app which has the following configuration:

<configSections>
<section name="castle" type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler, Castle.Windsor" />
</configSections>
<castle>
<facilities>
<facility id="rhino.esb">
<bus
                  threadCount="1"
                  numberOfRetries="5"
                  endpoint="rhino.queues://localhost:50001/SonaTribeESB_Backend"
                  name="backend"/>
<messages />
</facility>
</facilities>

and is fired using:

QueueUtil.PrepareQueue("backend");
_container = new WindsorContainer().AddFacility<WcfFacility>().Install(Configuration.FromAppConfig());
_container.Register(Component.For<IWindsorContainer>().Instance(_container));
Console.WriteLine("Backend: Starting to listen for incoming messages ...");
var host = new DefaultHost();
host.Start<BackendBootStrapper>();开发者_JAVA百科
Console.ReadLine();

I then have a WCF service which is has the following esb config:

<facilities>
<facility id="rhino.esb" >
<bus
                    threadCount="1"
                    numberOfRetries="5"
                    endpoint="rhino.queues://localhost:50002/SonaTribeESB_AccountClient"
                    name ="AccountClient"/>
<messages>
<add
                      name="Messages"
                      endpoint="rhino.queues://localhost:50001/SonaTribeESB_Backend" />
</messages>
</facility>
</facilities>

And the following in the global.asax:

Container.Install(Configuration.FromAppConfig());
Container.Kernel.AddFacility("rhino.esb", new RhinoServiceBusFacility());
var bus = Container.Resolve<IStartableServiceBus>();
bus.Start();

And then a second service with the following config:

<facilities>
<facility id="rhino.esb" >
<bus
                    threadCount="1"
                    numberOfRetries="5"
                    endpoint="rhino.queues://localhost:50003/SonaTribeESB_EventClient"
                    name ="EventClient"/>
<messages>
<add
                      name="Messages"
                      endpoint="rhino.queues://localhost:50001/SonaTribeESB_Backend" />
</messages>
</facility>
</facilities>

But whenever I try to send a message to the bus using this:

 _serviceBus.Send(new Esb.Messages.Account.EventAttendanceToggleMessage
                                {
                                    AccountProxy = eventAttendanceRequest.Account,
                                    EventProxy = eventAttendanceRequest.EventInstance,
                                    Attending = attending
                                });

I get the following error:

Could not find no message owner for SonaTribe.Esb.Messages.Account.EventAttendanceToggleMessage

Anyone got any idea what i'm doing wrong?


The problem with this was actually to do with the incorrect lifestyle being applied to the RavenDb DocumentStore in the IoC container! fixed.

0

精彩评论

暂无评论...
验证码 换一张
取 消