From 9dae1e69a430dce1c841c576abf159e162464a46 Mon Sep 17 00:00:00 2001 From: Keith Donald Date: Wed, 23 Apr 2008 19:07:31 +0000 Subject: [PATCH] --- .../webflow/mvc/servlet/FlowController.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowController.java b/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowController.java index b570a099..697c05e7 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowController.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/mvc/servlet/FlowController.java @@ -38,10 +38,12 @@ import org.springframework.webflow.executor.FlowExecutor; */ public class FlowController extends AbstractController implements InitializingBean { - private FlowHandlerAdapter flowHandlerAdapter; + private FlowHandlerAdapter flowHandlerAdapter = new FlowHandlerAdapter(); private Map flowHandlers = new HashMap(); + private boolean customFlowHandlerAdapter; + /** * Creates a new flow controller. * @see #setFlowExecutor(FlowExecutor) @@ -130,24 +132,24 @@ public class FlowController extends AbstractController implements InitializingBe */ public void setFlowHandlerAdapter(FlowHandlerAdapter flowHandlerAdapter) { this.flowHandlerAdapter = flowHandlerAdapter; + customFlowHandlerAdapter = true; } public void afterPropertiesSet() throws Exception { - if (flowHandlerAdapter == null) { - flowHandlerAdapter = new FlowHandlerAdapter(); + if (!customFlowHandlerAdapter) { flowHandlerAdapter.setApplicationContext(getApplicationContext()); flowHandlerAdapter.afterPropertiesSet(); } } + // subclassing hooks + protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { FlowHandler handler = getFlowHandler(request); return flowHandlerAdapter.handle(request, response, handler); } - // subclassing hooks - // internal helpers private FlowHandler getFlowHandler(HttpServletRequest request) {