I'm trying to override a session-scoped component with a conversational-scoped component for the duration of the conversation (i.e. Within the conversation the conversational-scoped component is injected when @In refers to the shared component name. Then when the conversation ends that same @In would get the session-scoped component.)
I have outjected something from pages.xml using the following code. I have a session-scoped component under the name "shared", and this takes a conversational-scoped component "existing" and puts it under a conversational scope under the name "shared".
Now there are both a session- and conversational-scoped component with a name "exists", but the problem is that in the debug screen they have the same values when they shouldn't. Does putting scope="CONVERSATION" outject it only into the conversation, or into both the conversation and session? (I want the former behavior.) They are the same class of entity.
<page view-id="/mypage.xhtml"> <navigation from-action="#{mybean.action}"> <out name="shared" value="#{existing}" scope="CONVERSATION" /> <redirect view-id="/toredirect.xhtml" /> </navigation> </page>