The more I think about it the more complex the issue is.
If a session-scoped component fires an event that has a conversation-scoped observer, should all instances of the observer from all available conversations be notified?
It sounds like conversation-scope observers better not count on events fired by components from any other scopes but the conversation scope.
As far as I can tell, Seam does not have the concept of scoped events. That is, there is no way for specifying the scope of the event when calling Events.raiseEvent().
Therefore, I can only think of the following as the guideline when writing conversation-scoped observers:
Your conversation-scoped observers should only listen to events that you deem to be of conversation scoped nature. The 'loginSuccessful' event is an example of an event that you should avoid listening to in your conversation-scoped components.
Seam events are always processed in the current contexts.
P.S. Please use your real name and email address here.
I am addicted to conversation-scoped components but in the case of events, they do not seem to really go well as observers :)
It sounds to me like you should be using a session-scoped observer in this particular case. (You're trying to affect-some session-global state, by the sounds of it.)