I have an event listener with an End attribute on it inside of a conversation
scoped bean:
@Observer(UserContextUtils.APP_SET_CHANGE_EVENT_NAME)
| @End
| public void currentViewAppSetChanged(CurrentViewApplicationSetChangeEvent
evt) {...}
There is no nested conversation when this method is fired. I was assuming that
the long running conversation for this been would be ended and when this bean
would be hit again a new instance would be created. Instead, nothing happens
and my member variables are all still intact with the values from the previous
conversation.
Here is the code flow:
pages.xml causes a load method to be invoked on a conversation bean marked with
"@Begin(join=true)". This load method instantiates and loads data into a custom
DataModel member variable.
User causes the event to fire which calls the method above with "@End". When
the page is re-rendered, the data model is not null as expected and the user is
displayed a old list of data.
>From my log, here is what happens during the event:
16:03:51,304 DEBUG [LiveReportBean] Received application set change event. Old:
COPY, New: APSHELL
| 16:03:51,305 DEBUG [Manager] Ending long-running conversation
| 16:03:51,305 DEBUG [Manager] Storing conversation state: 95
| 16:03:51,309 DEBUG [DebugPhaseListener] The phase INVOKE_APPLICATION(5) has
completed.
Here is the rendering of the next page:
16:03:51,902 DEBUG [DebugPhaseListener] The phase RESTORE_VIEW(1) is about to
start.
| 16:03:51,903 DEBUG [Manager] Found conversation id in request parameter: 95
| 16:03:51,903 DEBUG [Manager] Restoring conversation with id: 95
As you can see, although conversation #95 was ended, it is still open on the
next request.
I am using Seam 1.1
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4005521#4005521
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4005521
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user