[jboss-user] [JBoss Seam] - Getting proper conversation id after ending nested conversat
dustismo
do-not-reply at jboss.com
Mon Sep 17 19:10:33 EDT 2007
Hello,
I have a couple of servlets that I need to explicitly pass in the cid param to. I just noticed that the cid is incorrect if a nested conversation was just ended. Params in the url show cid=XX and parentConversationId=XX.. Obviously the cid is incorrect because the conversation is maintained until after the redirect (I could use endBeforeRedirect but I need the messaging).
So the question is how can I get the correct cid as a parameter for my servlet?
The following method does the trick, but it terribly stupid..
| public String getCid() {
| FacesContext context = FacesContext.getCurrentInstance();
| HttpServletRequest request = (HttpServletRequest) context.getExternalContext().getRequest();
| String id = Conversation.instance().getId();
| if (Conversation.instance().isNested()) {
| String parentId = request.getParameter("parentConversationId");
| if (parentId != null)
| id = Conversation.instance().getParentId();
| String convProp = request.getParameter("conversationPropagation");
| if (convProp != null && convProp.equals("end"))
| id = Conversation.instance().getParentId();
| }
| return id;
| }
|
|
Is there an improved way to do this? (I am using seam 1.3a so maybe there is something in 2.0?)
thanks for any help,
Dustin
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4085286#4085286
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4085286
More information about the jboss-user
mailing list