Hi Gavin,
probably I did not explain correctly what I asked to you then I try to explain what I
found strange in the Seam behaviour replying to your post but with a little description of
the starting scenario:
At the moment 0 I have two tabs opened: one with a search function to search for A stuff
and one with a search function to search for B stuff, they share the same *outcome* but,
obviously, not the same conversation.
At the moment 1 the user search for his A stuff finds what he needs and clicks on the link
which opens a new tab with both different conversation and different outcome.
At the moment 2 the user selects the search stuff A tab (which gets the focus) and closes
it because he found what he needs.
Now I find the problem:
I get the conversation id and the outcome of the tab immediately after the one the user
wants to close in order to resume the conversation and switch to the correct view id after
having removed the current conversation, in my scenario I get the data of the search stuff
B tab (same outcome of the search stuff A but different conversation)
- If I execute only
| Conversation.instance().end();
|
and return the outcome of the tab which reaches the focus (the search stuff B) Seam ends
the conversation of search stuff A tab but freezes the screen (maybe because gets back the
same outcome and then does nothing)
- If I execute
| Conversation.instance().end();
| Manager.instance().switchConversation(newTabConvId);
|
and return the outcome of the tab which reaches the focus Seam switches correctly to the
search stuff B tab but when I try to ask again for the search stuff A from the menu (I
want to search for some other A stuff) the tab contains the data of the conversation I
thought to be removed.
I made a test case really less complicated than my application and what I see can be
resumed as follows:
- If I call only the Conversation.instance().end() Seam ends the conversation but I
cannot switch to what I need for
- If I call both the methods Seam switches to what I need for but does not end the
conversation
One last thing:
[cite]
I also don't understand why you think that calling end() should result in a call to
some @End method.
[/cite]
This means that I cannot expect that calling the end of a conversation programmatically
can cause the execution of the @End method of the conversation I'm ending?
Hope you can help me.
Regards,
Raffaele Camanzo
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025476#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...