a) usually... yes. b) no, you don't.
You need to register this in the message owner's configuration.
<castle>
<facilities>
<facility id="rhino.esb" >
<bus threadCount="1"
numberOfRetries="5"
endpoint="msmq://localhost/nhprof.backend"
/>
<messages>
<add name="NHProfilerWeb.Backend.InternalMessages"
endpoint="msmq://localhost/nhprof.backend"/>
<add name="NHProfilerWeb.Messages"
endpoint="msmq://localhost/nhprof.backend"/>
</messages>
</facility>
</facilities>
On Mon, Jan 19, 2009 at 4:43 PM, chrisortman <[email protected]> wrote:
>
> Sorry, I don't think I understand...
>
> a) Are you saying that there will always be other endpoints?
>
> b)
> I need to define in my application something like this?
> public class Something : ConsumerOf<AdministrativeMessage> {
> public void Consume(AdministrativeMessage m) {
> //nothing to do here
> }
> }
>
> On Jan 19, 3:20 pm, Ayende Rahien <[email protected]> wrote:
> > a) you assume that there are other end points.b) make sure that you have
> > message owners defined for the bus' messages, that will handle the
> > subscriptions.
> >
> > On Mon, Jan 19, 2009 at 4:03 PM, chrisortman <[email protected]>
> wrote:
> >
> > > I think why I am getting confused is that whatever bus i use to Send|
> > > Notify|Publish should be an implicit subscriber since it can consume
> > > its own messages. Otherwise I can't see why to use Notify|Publish if
> > > there are no other endpoints.
> >
> > > On Jan 19, 2:05 pm, Ayende Rahien <[email protected]> wrote:
> > > > No, because discarded messages are for _arriving_ messages.
> >
> > > > On Mon, Jan 19, 2009 at 2:43 PM, chrisortman <[email protected]>
> > > wrote:
> >
> > > > > Currently when doing IServiceBus.Notify(message) nothing happens if
> > > > > there are no subscribers.
> > > > > Should this also generate a discarded message?
> >
> > > > > On Jan 19, 11:04 am, Ayende Rahien <[email protected]> wrote:
> > > > > > That is an extremely common approach.
> > > > > > For that matter, here is the real configuration behind the NH
> Prof
> > > > > website:
> >
> > > > > > <castle>
> >
> > > > > > <facilities>
> >
> > > > > > <facility id="rhino.esb" >
> >
> > > > > > <bus threadCount="1"
> >
> > > > > > numberOfRetries="5"
> >
> > > > > > endpoint="msmq://localhost/nhprof.backend"
> >
> > > > > > />
> >
> > > > > > <messages>
> >
> > > > > > <add name="NHProfilerWeb.Backend.InternalMessages"
> >
> > > > > > endpoint="msmq://localhost/nhprof.backend"/>
> >
> > > > > > <add name="NHProfilerWeb.Messages"
> >
> > > > > > endpoint="msmq://localhost/nhprof.backend"/>
> >
> > > > > > </messages>
> >
> > > > > > </facility>
> >
> > > > > > </facilities>
> >
> > > > > > On Mon, Jan 19, 2009 at 12:00 PM, chrisortman <
> [email protected]
> >
> > > > > wrote:
> >
> > > > > > > Does it violate anything if the same bus that sends the message
> is
> > > > > > > also the one that is watching that queue?
> >
> > > > > > > Lets say I have 2 apps.
> > > > > > > 1 NHProf website
> > > > > > > 2 Windows Service that does order processing
> >
> > > > > > > So in the web app I would do something like
> > > > > > > <facility id="rhino.esb" >
> > > > > > > <bus threadCount="1"
> > > > > > > numberOfRetries="5"
> > > > > > > endpoint="msmq://localhost/nhprof.web"
> > > > > > > />
> > > > > > > <messages>
> > > > > > > <add name="nhprof"
> > > > > > > endpoint="msmq://localhost/nhprof.orders"/>
> > > > > > > </messages>
> > > > > > > </facility>
> >
> > > > > > > And then the service app:
> > > > > > > <facility id="rhino.esb" >
> > > > > > > <bus threadCount="1"
> > > > > > > numberOfRetries="5"
> > > > > > > endpoint="msmq://localhost/nhprof.svc"
> > > > > > > />
> > > > > > > <messages>
> > > > > > > <add name="nhprof"
> > > > > > > endpoint="msmq://localhost/nhprof.orders"/>
> > > > > > > </messages>
> > > > > > > </facility>
> > > > > > > On Jan 19, 10:53 am, Ayende Rahien <[email protected]> wrote:
> > > > > > > > No, there is an assumption that that queue exists.
> >
> > > > > > > > On Mon, Jan 19, 2009 at 11:50 AM, chrisortman <
> > > [email protected]
> >
> > > > > > > wrote:
> >
> > > > > > > > > Is there an assumption then that there exists a bus that is
> > > > > watching
> > > > > > > > > that endpoint?
> >
> > > > > > > > > On Jan 19, 10:27 am, Ayende Rahien <[email protected]>
> wrote:
> > > > > > > > > > inline
> >
> > > > > > > > > > On Mon, Jan 19, 2009 at 10:43 AM, chrisortman <
> > > > > [email protected]
> >
> > > > > > > > > wrote:
> >
> > > > > > > > > > > Is it correct to say that a Discarded message is any
> > > message
> > > > > that
> > > > > > > > > > > arrives at an endpoint but has no consumers registered
> for
> > > it?
> >
> > > > > > > > > > yes
> > > > > > > > > > another option is that this is a saga message that
> doesn't
> > > have a
> > > > > > > saga
> > > > > > > > > > instance to orchestrate it.
> >
> > > > > > > > > > > I am also not understanding why messages have their own
> > > > > endpoint or
> > > > > > > > > > > when they should share the same endpoint as the bus?
> >
> > > > > > > > > > > I am running the trunk right now, and when I use this
> as my
> > > > > config
> > > > > > > > > > > <facility id="rhino.esb" >
> > > > > > > > > > > <bus threadCount="1"
> > > > > > > > > > > numberOfRetries="5"
> >
> > > > > > > > > > > logEndpoint="msmq://localhost/my.log"
> > > > > > > > > > > endpoint="msmq://localhost/rhino"
> > > > > > > > > > > />
> > > > > > > > > > > <messages>
> > > > > > > > > > > <add
> > > name="MyMessageAssembly"
> > > > > > > > > > >
> endpoint="msmq://localhost/my.subscriptions"/>
> > > > > > > > > > > </messages>
> > > > > > > > > > > </facility>
> >
> > > > > > > > > > > I get errors because the my.subscriptions queue doesn't
> > > exist.
> >
> > > > > > > > > > The problem that you have is that you are trying to send
> the
> > > > > message
> > > > > > > to a
> > > > > > > > > > non existing bus.
> >
> > > > > > > > > > The reason that you have to specify an endpoint several
> times
> > > is
> > > > > that
> > > > > > > the
> > > > > > > > > > bus' endpoint says what queue the bus listen on.
> > > > > > > > > > The message endpoint specify what is the owner of a
> > > particular
> > > > > set of
> > > > > > > > > > messages.
> >
>
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---