You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2016/04/10 16:18:26 UTC

[1/6] wicket git commit: WICKET-6129 handlers were never executed nested actually, so no need to keep a stack of handlers

Repository: wicket
Updated Branches:
  refs/heads/WICKET-6129-scheduled-handler-notification 39da7f9d8 -> 03ea3af26


WICKET-6129 handlers were never executed nested actually, so no need to keep a stack of handlers


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/548d9353
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/548d9353
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/548d9353

Branch: refs/heads/WICKET-6129-scheduled-handler-notification
Commit: 548d93539e7af0108b8411577c90a81250e5c7b8
Parents: 39da7f9
Author: Sven Meier <sv...@apache.org>
Authored: Fri Apr 8 12:20:07 2016 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Sun Apr 10 16:08:22 2016 +0200

----------------------------------------------------------------------
 .../wicket/request/RequestHandlerStack.java     | 24 ++++++++++----------
 1 file changed, 12 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/548d9353/wicket-request/src/main/java/org/apache/wicket/request/RequestHandlerStack.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/RequestHandlerStack.java b/wicket-request/src/main/java/org/apache/wicket/request/RequestHandlerStack.java
index 8868f1b..206763c 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/RequestHandlerStack.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/RequestHandlerStack.java
@@ -17,7 +17,6 @@
 package org.apache.wicket.request;
 
 import java.util.ArrayList;
-import java.util.LinkedList;
 import java.util.List;
 
 import org.apache.wicket.util.lang.Args;
@@ -35,19 +34,20 @@ public abstract class RequestHandlerStack
 {
 	private static final Logger log = LoggerFactory.getLogger(RequestHandlerStack.class);
 
-	// we need both Queue and List interfaces
-	private final LinkedList<IRequestHandler> requestHandlers = new LinkedList<>();
+	private IRequestHandler active;
 
 	private final List<IRequestHandler> inactiveRequestHandlers = new ArrayList<>();
 
 	private IRequestHandler scheduledAfterCurrent = null;
 
 	/**
+	 * Get the handler currently executed.
+	 *
 	 * @return active handler
 	 */
 	public IRequestHandler getActive()
 	{
-		return requestHandlers.peek();
+		return active;
 	}
 
 	/**
@@ -59,14 +59,14 @@ public abstract class RequestHandlerStack
 	 */
 	public IRequestHandler execute(final IRequestHandler handler)
 	{
-		requestHandlers.add(handler);
+		active = handler;
 		try
 		{
 			respond(handler);
 		}
 		finally
 		{
-			requestHandlers.poll();
+			active = null;
 			inactiveRequestHandlers.add(handler);
 		}
 
@@ -127,7 +127,7 @@ public abstract class RequestHandlerStack
 	 */
 	public void replaceAll(final IRequestHandler handler)
 	{
-		if (requestHandlers.isEmpty())
+		if (active == null)
 		{
 			execute(handler);
 		}
@@ -142,13 +142,13 @@ public abstract class RequestHandlerStack
 	 */
 	public void detach()
 	{
-		if (!requestHandlers.isEmpty())
+		if (active != null)
 		{
-			// All requests handlers should be inactive at this point
-			log.warn("Some of the request handlers are still active.");
+			// no request handler should be active at this point
+			log.warn("request handler is still active.");
 
-			inactiveRequestHandlers.addAll(requestHandlers);
-			requestHandlers.clear();
+			inactiveRequestHandlers.add(active);
+			active = null;
 		}
 
 		for (IRequestHandler handler : inactiveRequestHandlers)


[2/6] wicket git commit: WICKET-6129 use execute() for exception execution too

Posted by sv...@apache.org.
WICKET-6129 use execute() for exception execution too


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/794bc991
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/794bc991
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/794bc991

Branch: refs/heads/WICKET-6129-scheduled-handler-notification
Commit: 794bc991e0322f3354ab1ce1d3bb3dc44d006b25
Parents: 548d935
Author: Sven Meier <sv...@apache.org>
Authored: Fri Apr 8 15:36:30 2016 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Sun Apr 10 16:08:32 2016 +0200

----------------------------------------------------------------------
 .../apache/wicket/request/cycle/RequestCycle.java    | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/794bc991/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
index cd6c07a..4731e35 100644
--- a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
+++ b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
@@ -235,9 +235,7 @@ public class RequestCycle implements IRequestCycle, IEventSink
 			IRequestHandler handler = handleException(e);
 			if (handler != null)
 			{
-				listeners.onExceptionRequestHandlerResolved(this, handler, e);
-				executeExceptionRequestHandler(handler, getExceptionRetryCount());
-				listeners.onRequestHandlerExecuted(this, handler);
+				executeExceptionRequestHandler(e, handler, getExceptionRetryCount());
 			}
 			else
 			{
@@ -312,16 +310,19 @@ public class RequestCycle implements IRequestCycle, IEventSink
 
 	/**
 	 * 
+	 * @param exception
 	 * @param handler
 	 * @param retryCount
 	 */
-	private void executeExceptionRequestHandler(final IRequestHandler handler, final int retryCount)
+	private void executeExceptionRequestHandler(Exception exception, final IRequestHandler handler, int retryCount)
 	{
 		scheduleRequestHandlerAfterCurrent(null);
 
 		try
 		{
-			requestHandlerExecutor.execute(handler);
+			listeners.onExceptionRequestHandlerResolved(this, handler, exception);
+
+			execute(handler);
 		}
 		catch (Exception e)
 		{
@@ -330,7 +331,7 @@ public class RequestCycle implements IRequestCycle, IEventSink
 				IRequestHandler next = handleException(e);
 				if (next != null)
 				{
-					executeExceptionRequestHandler(next, retryCount - 1);
+					executeExceptionRequestHandler(exception, next, retryCount - 1);
 					return;
 				}
 			}
@@ -919,4 +920,4 @@ public class RequestCycle implements IRequestCycle, IEventSink
 
 	}
 
-}
+}
\ No newline at end of file


[6/6] wicket git commit: WICKET-6129 listeners are notified of all executed handlers now, so it is sufficient to listen for #onRequestHandlerResolved() only

Posted by sv...@apache.org.
WICKET-6129 listeners are notified of all executed handlers now, so it is sufficient to listen for #onRequestHandlerResolved() only


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/03ea3af2
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/03ea3af2
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/03ea3af2

Branch: refs/heads/WICKET-6129-scheduled-handler-notification
Commit: 03ea3af26d1fa7dfe442f257fd18cbdef8890ba9
Parents: 4ba83a5
Author: Sven Meier <sv...@apache.org>
Authored: Sun Apr 10 16:03:51 2016 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Sun Apr 10 16:12:44 2016 +0200

----------------------------------------------------------------------
 .../cycle/PageRequestHandlerTracker.java        | 27 +++++---------
 .../cycle/PageRequestHandlerTrackerTest.java    | 39 +++++++++++---------
 2 files changed, 31 insertions(+), 35 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/03ea3af2/wicket-core/src/main/java/org/apache/wicket/request/cycle/PageRequestHandlerTracker.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/request/cycle/PageRequestHandlerTracker.java b/wicket-core/src/main/java/org/apache/wicket/request/cycle/PageRequestHandlerTracker.java
index b2390a6..98a0194 100644
--- a/wicket-core/src/main/java/org/apache/wicket/request/cycle/PageRequestHandlerTracker.java
+++ b/wicket-core/src/main/java/org/apache/wicket/request/cycle/PageRequestHandlerTracker.java
@@ -21,14 +21,19 @@ import org.apache.wicket.core.request.handler.IPageRequestHandler;
 import org.apache.wicket.request.IRequestHandler;
 
 /**
- * Registers and retrieves first and last IPageRequestHandler in a request cycle.
+ * Registers and retrieves first and last executed {@link IPageRequestHandler} in a request cycle.
  * Can be used to find out what is the requested page and what is the actual response page.
- *
- * <p>To use it an application needs to register it with:
+ * <p>
+ * To use it an application needs to register it with:
  *     <pre><code>
  *          application.getRequestCycleListeners().add(new PageRequestHandlerTracker());
  *     </code></pre>
- * </p>
+ * <p>
+ * The result can then be accessed at the end of each {@link RequestCycle} with:
+ *     <pre><code>
+ *          IPageRequestHandler first = PageRequestHandlerTracker.getFirstHandler(RequestCycle.get());
+ *          IPageRequestHandler last = PageRequestHandlerTracker.getLastHandler(RequestCycle.get());
+ *     </code></pre>
  *
  * @since 1.5.8
  */
@@ -52,20 +57,6 @@ public class PageRequestHandlerTracker extends AbstractRequestCycleListener
 		registerLastHandler(cycle,handler);
 	}
 
-	@Override
-	public void onRequestHandlerScheduled(RequestCycle cycle, IRequestHandler handler)
-	{
-		super.onRequestHandlerResolved(cycle, handler);
-		registerLastHandler(cycle,handler);
-	}
-
-	@Override
-	public void onExceptionRequestHandlerResolved(RequestCycle cycle, IRequestHandler handler, Exception exception)
-	{
-		super.onExceptionRequestHandlerResolved(cycle, handler, exception);
-		registerLastHandler(cycle,handler);
-	}
-
 	/**
 	 * Registers pagerequesthandler when it's resolved ,keeps up with the most recent handler resolved
 	 *

http://git-wip-us.apache.org/repos/asf/wicket/blob/03ea3af2/wicket-core/src/test/java/org/apache/wicket/request/cycle/PageRequestHandlerTrackerTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/cycle/PageRequestHandlerTrackerTest.java b/wicket-core/src/test/java/org/apache/wicket/request/cycle/PageRequestHandlerTrackerTest.java
index a4dda7c..3f79d7b 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/cycle/PageRequestHandlerTrackerTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/cycle/PageRequestHandlerTrackerTest.java
@@ -38,8 +38,20 @@ public class PageRequestHandlerTrackerTest extends WicketTestCase
 	public void trackPages()
 	{
 		tester.getApplication().getRequestCycleListeners().add(new PageRequestHandlerTracker());
-		tester.startPage(new PageA());
+		tester.getApplication().getRequestCycleListeners().add(new AbstractRequestCycleListener()
+		{
+			@Override
+			public void onDetach(RequestCycle cycle)
+			{
+				IPageRequestHandler firstHandler = PageRequestHandlerTracker.getFirstHandler(cycle);
+				assertEquals(PageA.class, firstHandler.getPageClass());
 
+				IPageRequestHandler lastHandler = PageRequestHandlerTracker.getLastHandler(cycle);
+				assertEquals(PageB.class, lastHandler.getPageClass());
+			}
+		});
+
+		tester.startPage(new PageA());
 	}
 
 	/**
@@ -47,10 +59,17 @@ public class PageRequestHandlerTrackerTest extends WicketTestCase
 	 */
 	private static class PageA extends WebPage implements IMarkupResourceStreamProvider
 	{
+		public PageA()
+		{
+			// make stateful so it is rendered in first requestCycle (without redirect) 
+			setStatelessHint(false);
+		}
+
 		@Override
-		protected void onBeforeRender()
+		protected void onConfigure()
 		{
-			super.onBeforeRender();
+			super.onConfigure();
+
 			setResponsePage(new PageB());
 		}
 
@@ -67,20 +86,6 @@ public class PageRequestHandlerTrackerTest extends WicketTestCase
 	private static class PageB extends WebPage implements IMarkupResourceStreamProvider
 	{
 		@Override
-		protected void onAfterRender()
-		{
-			super.onAfterRender();
-
-			RequestCycle cycle = getRequestCycle();
-
-			IPageRequestHandler firstHandler = PageRequestHandlerTracker.getFirstHandler(cycle);
-			assertEquals(PageA.class, firstHandler.getPageClass());
-
-			IPageRequestHandler lastHandler = PageRequestHandlerTracker.getLastHandler(cycle);
-			assertEquals(PageB.class, lastHandler.getPageClass());
-		}
-
-		@Override
 		public IResourceStream getMarkupResourceStream(MarkupContainer container, Class<?> containerClass)
 		{
 			return new StringResourceStream("<html/>");


[4/6] wicket git commit: WICKET-6129 reordered if-statements

Posted by sv...@apache.org.
WICKET-6129 reordered if-statements


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/f026d08b
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/f026d08b
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/f026d08b

Branch: refs/heads/WICKET-6129-scheduled-handler-notification
Commit: f026d08b6ee7875c223a1cc9fda35bea70192c57
Parents: 2c9f50c
Author: Sven Meier <sv...@apache.org>
Authored: Fri Apr 8 22:46:57 2016 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Sun Apr 10 16:12:33 2016 +0200

----------------------------------------------------------------------
 .../wicket/request/cycle/RequestCycle.java      | 22 +++++++++++++-------
 1 file changed, 14 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/f026d08b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
index b7b1e6a..075bda8 100644
--- a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
+++ b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
@@ -239,16 +239,18 @@ public class RequestCycle implements IRequestCycle, IEventSink
 			listeners.onBeginRequest(this);
 			onBeginRequest();
 			IRequestHandler handler = resolveRequestHandler();
-			if (handler != null)
+			if (handler == null)
+			{
+				// Did not find any suitable handler, thus not executing the request
+				log.debug(
+					"No suitable handler found for URL {}, falling back to container to process this request",
+					request.getUrl());
+			}
+			else
 			{
 				execute(handler);
 				return true;
 			}
-
-			// Did not find any suitable handler, thus not executing the request
-			log.debug(
-				"No suitable handler found for URL {}, falling back to container to process this request",
-				request.getUrl());
 		}
 		catch (Exception exception)
 		{
@@ -267,6 +269,7 @@ public class RequestCycle implements IRequestCycle, IEventSink
 		{
 			set(null);
 		}
+
 		return false;
 	}
 
@@ -325,7 +328,11 @@ public class RequestCycle implements IRequestCycle, IEventSink
 		}
 		catch (Exception e)
 		{
-			if (retryCount > 0)
+			if (retryCount <= 0)
+			{
+				log.error("Error during executing exception request handler", e);
+			}
+			else
 			{
 				IRequestHandler next = handleException(e);
 				if (next != null)
@@ -334,7 +341,6 @@ public class RequestCycle implements IRequestCycle, IEventSink
 					return;
 				}
 			}
-			log.error("Error during executing exception request handler", e);
 		}
 	}
 


[5/6] wicket git commit: WICKET-6129 move duplicated code into #executeExceptionRequestHandler

Posted by sv...@apache.org.
WICKET-6129 move duplicated code into #executeExceptionRequestHandler


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/4ba83a5b
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/4ba83a5b
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/4ba83a5b

Branch: refs/heads/WICKET-6129-scheduled-handler-notification
Commit: 4ba83a5b2b434577a778d91f07b7d4617de53421
Parents: f026d08
Author: Sven Meier <sv...@apache.org>
Authored: Fri Apr 8 23:14:43 2016 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Sun Apr 10 16:12:39 2016 +0200

----------------------------------------------------------------------
 .../wicket/request/cycle/RequestCycle.java      | 30 ++++++++------------
 .../request/cycle/RequestCycleListenerTest.java |  4 ++-
 2 files changed, 15 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/4ba83a5b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
index 075bda8..f92e024 100644
--- a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
+++ b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
@@ -254,15 +254,7 @@ public class RequestCycle implements IRequestCycle, IEventSink
 		}
 		catch (Exception exception)
 		{
-			IRequestHandler handler = handleException(exception);
-			if (handler != null)
-			{
-				executeExceptionRequestHandler(exception, handler, getExceptionRetryCount());
-			}
-			else
-			{
-				log.error("Error during request processing. URL=" + request.getUrl(), exception);
-			}
+			executeExceptionRequestHandler(exception, getExceptionRetryCount());
 			return true;
 		}
 		finally
@@ -311,15 +303,22 @@ public class RequestCycle implements IRequestCycle, IEventSink
 	}
 
 	/**
+	 * Execute a requestHandler for the given exception.
 	 * 
 	 * @param exception
-	 * @param handler
 	 * @param retryCount
 	 */
-	private void executeExceptionRequestHandler(Exception exception, final IRequestHandler handler, int retryCount)
+	private void executeExceptionRequestHandler(Exception exception, int retryCount)
 	{
 		scheduleRequestHandlerAfterCurrent(null);
 
+		IRequestHandler handler = handleException(exception);
+		if (handler == null)
+		{
+			log.error("Error during request processing. URL=" + request.getUrl(), exception);
+			return;
+		}
+
 		try
 		{
 			listeners.onExceptionRequestHandlerResolved(this, handler, exception);
@@ -330,16 +329,11 @@ public class RequestCycle implements IRequestCycle, IEventSink
 		{
 			if (retryCount <= 0)
 			{
-				log.error("Error during executing exception request handler", e);
+				log.error("Exception retry count exceeded", e);
 			}
 			else
 			{
-				IRequestHandler next = handleException(e);
-				if (next != null)
-				{
-					executeExceptionRequestHandler(exception, next, retryCount - 1);
-					return;
-				}
+				executeExceptionRequestHandler(exception, retryCount - 1);
 			}
 		}
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/4ba83a5b/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleListenerTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleListenerTest.java b/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleListenerTest.java
index d921d11..1f174a8 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleListenerTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleListenerTest.java
@@ -247,6 +247,8 @@ public class RequestCycleListenerTest extends BaseRequestHandlerStackTest
 		cycle.processRequestAndDetach();
 
 		assertEquals(401, errorCode);
+		assertEquals(2, incrementingListener.resolved);
+		assertEquals(1, incrementingListener.executed);
 		assertEquals(1, incrementingListener.exceptionResolutions);
 		assertEquals(0, incrementingListener.schedules);
 	}
@@ -270,7 +272,7 @@ public class RequestCycleListenerTest extends BaseRequestHandlerStackTest
 	 * @throws Exception
 	 */
 	@Test
-	public void exceptionHandingInOnDetach() throws Exception
+	public void exceptionHandlingInOnDetach() throws Exception
 	{
 		// this test is a little flaky because it depends on the ordering of listeners which is not
 		// guaranteed


[3/6] wicket git commit: WICKET-6129 ordered methods to follow invocation order

Posted by sv...@apache.org.
WICKET-6129 ordered methods to follow invocation order


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/2c9f50cc
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/2c9f50cc
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/2c9f50cc

Branch: refs/heads/WICKET-6129-scheduled-handler-notification
Commit: 2c9f50cc640719befef6fe683b7b99454e598a6e
Parents: 794bc99
Author: Sven Meier <sv...@apache.org>
Authored: Fri Apr 8 20:22:04 2016 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Sun Apr 10 16:12:25 2016 +0200

----------------------------------------------------------------------
 .../wicket/request/cycle/RequestCycle.java      | 51 ++++++++++----------
 1 file changed, 25 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/2c9f50cc/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
index 4731e35..b7b1e6a 100644
--- a/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
+++ b/wicket-core/src/main/java/org/apache/wicket/request/cycle/RequestCycle.java
@@ -206,6 +206,26 @@ public class RequestCycle implements IRequestCycle, IEventSink
 	}
 
 	/**
+	 * Convenience method that processes the request and detaches the {@link RequestCycle}.
+	 * 
+	 * @return <code>true</code> if the request resolved to a Wicket request, <code>false</code>
+	 *         otherwise.
+	 */
+	public boolean processRequestAndDetach()
+	{
+		boolean result;
+		try
+		{
+			result = processRequest();
+		}
+		finally
+		{
+			detach();
+		}
+		return result;
+	}
+
+	/**
 	 * Processes the request.
 	 * 
 	 * @return <code>true</code> if the request resolved to a Wicket request, <code>false</code>
@@ -230,16 +250,16 @@ public class RequestCycle implements IRequestCycle, IEventSink
 				"No suitable handler found for URL {}, falling back to container to process this request",
 				request.getUrl());
 		}
-		catch (Exception e)
+		catch (Exception exception)
 		{
-			IRequestHandler handler = handleException(e);
+			IRequestHandler handler = handleException(exception);
 			if (handler != null)
 			{
-				executeExceptionRequestHandler(e, handler, getExceptionRetryCount());
+				executeExceptionRequestHandler(exception, handler, getExceptionRetryCount());
 			}
 			else
 			{
-				log.error("Error during request processing. URL=" + request.getUrl(), e);
+				log.error("Error during request processing. URL=" + request.getUrl(), exception);
 			}
 			return true;
 		}
@@ -288,27 +308,6 @@ public class RequestCycle implements IRequestCycle, IEventSink
 	}
 
 	/**
-	 * Convenience method that processes the request and detaches the {@link RequestCycle}.
-	 * 
-	 * @return <code>true</code> if the request resolved to a Wicket request, <code>false</code>
-	 *         otherwise.
-	 */
-	public boolean processRequestAndDetach()
-	{
-		boolean result;
-		try
-		{
-			result = processRequest();
-		}
-		finally
-		{
-			detach();
-		}
-		return result;
-	}
-
-
-	/**
 	 * 
 	 * @param exception
 	 * @param handler
@@ -335,7 +334,7 @@ public class RequestCycle implements IRequestCycle, IEventSink
 					return;
 				}
 			}
-			log.error("Error during processing error message", e);
+			log.error("Error during executing exception request handler", e);
 		}
 	}