Map<String, String> parameters = facesContext.getExternalContext().getRequestParameterMap(); ConversationPropagation.instance().restoreConversationId(parameters); boolean conversationFound = Manager.instance().restoreConversation(); pageContext.get().set("org.jboss.seam.jsf.SeamPhaseListener.conversationFound", conversationFound);
private void restoreConversation() { HttpServletRequest request = httpServletRequest(); ServletLifecycle.beginRequest(request); ServletContexts.instance().setRequest(request); ConversationPropagation.instance().restoreConversationId( request.getParameterMap() ); Manager.instance().restoreConversation(); ServletLifecycle.resumeConversation(request); Manager.instance().handleConversationPropagation( request.getParameterMap() ); this.iRestoredTheConversation = true; }
private void restoreConversation() { HttpServletRequest request = httpServletRequest(); if (request == null) return; ServletLifecycle.beginRequest(request); ServletContexts.instance().setRequest(request); ConversationPropagation.instance().restoreConversationId( request.getParameterMap() ); Manager.instance().restoreConversation(); ServletLifecycle.resumeConversation(request); Manager.instance().handleConversationPropagation( request.getParameterMap() ); this.iRestoredTheConversation = true; }
/** * Restore the page and conversation contexts during a JSF request */ protected void afterRestoreView(FacesContext facesContext) { boolean conversationFound = Contexts.isPageContextActive() ? Contexts.getPageContext().isSet("org.jboss.seam.jsf.SeamPhaseListener.conversationFound") : false; FacesLifecycle.resumePage(); Map parameters = facesContext.getExternalContext().getRequestParameterMap(); if (!conversationFound) // there is exceptional case when restoring of conversation wasn't called while page context was lazily initialized { ConversationPropagation.instance().restoreConversationId(parameters); conversationFound = Manager.instance().restoreConversation(); } FacesLifecycle.resumeConversation( facesContext.getExternalContext() ); postRestorePage(facesContext, parameters, conversationFound); }
/** * Inbound message handler. Seam contexts should be initialized here, and * the conversation ID (if present) is extracted from the request. * * @param messageContext The message context * @return boolean true if processing should continue */ public boolean handleInbound(MessageContext messageContext) { try { HttpServletRequest request = (HttpServletRequest) messageContext.get(MessageContext.SERVLET_REQUEST); ServletLifecycle.beginRequest(request, ServletLifecycle.getServletContext()); ServletContexts.instance().setRequest(request); String conversationId = extractConversationId(messageContext); ConversationPropagation.instance().setConversationId( conversationId ); Manager.instance().restoreConversation(); ServletLifecycle.resumeConversation(request); return true; } catch (SOAPException ex) { log.error("Error handling inbound SOAP request", ex); return false; } }
protected static void initializeSeamContext(OperationContext context, String conversationId, CoreSession session) { HttpServletRequest request = getRequest(context); if (request == null) { throw new NuxeoException("Can not init Seam context: no HttpServletRequest was found"); } ServletLifecycle.beginRequest(request); ServletContexts.instance().setRequest(request); if (conversationId == null) { conversationId = (String) context.getChainParameter("conversationId"); } if (conversationId != null) { ConversationPropagation.instance().setConversationId(conversationId); Manager.instance().restoreConversation(); ServletLifecycle.resumeConversation(request); Contexts.getEventContext().set("documentManager", session); setSeamActionContext(context, session); } }
ServletContexts.instance().setRequest(request); restoreConversationId(); Manager.instance().restoreConversation(); ServletLifecycle.resumeConversation(request); handleConversationPropagation();
Manager.instance().restoreConversation();