Author: hermanns
Date: Thu Apr 19 08:00:20 2007
New Revision: 530439

URL: http://svn.apache.org/viewvc?view=rev&rev=530439
Log:
FilterDispatcher not always calling ActionContextCleanUp.cleanUp(Request)
o applied patch submitted by Jasper Rosenberg

Issue Number: WW-1816

Modified:
    
struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java

Modified: 
struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java?view=diff&rev=530439&r1=530438&r2=530439
==============================================================================
--- 
struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java
 (original)
+++ 
struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/dispatcher/FilterDispatcher.java
 Thu Apr 19 08:00:20 2007
@@ -379,7 +379,7 @@
      */
     public void doFilter(ServletRequest req, ServletResponse res, FilterChain 
chain) throws IOException, ServletException {
 
-       
+
         HttpServletRequest request = (HttpServletRequest) req;
         HttpServletResponse response = (HttpServletResponse) res;
         ServletContext servletContext = getServletContext();
@@ -394,7 +394,6 @@
             } catch (Exception ex) {
                 LOG.error("error getting ActionMapping", ex);
                 dispatcher.sendError(request, response, servletContext, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, ex);
-                ActionContextCleanUp.cleanUp(req);
                 return;
             }
 
@@ -417,14 +416,14 @@
                 return;
             }
 
+            dispatcher.serviceAction(request, response, servletContext, 
mapping);
+
+        } finally {
             try {
-                dispatcher.serviceAction(request, response, servletContext, 
mapping);
-            } finally {
                 ActionContextCleanUp.cleanUp(req);
+            } finally {
+                UtilTimerStack.pop(timerKey);
             }
-        }
-        finally {
-            UtilTimerStack.pop(timerKey);
         }
     }
 


Reply via email to