From 155649fd40742c7fd4dab8ef1772d67d2a4a30d4 Mon Sep 17 00:00:00 2001 From: Rossen Stoyanchev Date: Wed, 27 Oct 2010 08:48:02 +0000 Subject: [PATCH] SWF-1407 Update mvc.JsfView to re-use FacesContext if available such as when used from Web Flow --- .../main/java/org/springframework/faces/mvc/JsfView.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java b/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java index e88c055e..d0e15289 100644 --- a/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java +++ b/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java @@ -32,6 +32,7 @@ import javax.faces.lifecycle.LifecycleFactory; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.springframework.faces.webflow.FacesContextHelper; import org.springframework.faces.webflow.JsfUtils; import org.springframework.util.Assert; import org.springframework.web.servlet.support.RequestContextUtils; @@ -55,7 +56,8 @@ public class JsfView extends AbstractUrlBasedView { protected void renderMergedOutputModel(Map model, HttpServletRequest request, HttpServletResponse response) throws Exception { - FacesContext facesContext = createFacesContext(request, response); + FacesContextHelper facesContextHelper = new FacesContextHelper(); + FacesContext facesContext = facesContextHelper.getFacesContext(getServletContext(), request, response); populateRequestMap(facesContext, model); @@ -83,8 +85,7 @@ public class JsfView extends AbstractUrlBasedView { facesLifecycle.render(facesContext); } finally { logger.debug("View rendering complete"); - facesContext.responseComplete(); - facesContext.release(); + facesContextHelper.releaseIfNecessary(); } }