You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2011/04/13 21:32:38 UTC

svn commit: r1091894 - in /wicket/trunk/wicket-core/src: main/java/org/apache/wicket/request/handler/render/WebPageRenderer.java test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java

Author: mgrigorov
Date: Wed Apr 13 19:32:37 2011
New Revision: 1091894

URL: http://svn.apache.org/viewvc?rev=1091894&view=rev
Log:
WICKET-3611 Redirect to Buffer makes one redirect too much

No need to redirect (to buffer) when fromUrl and toUrl are exactly the same.


Modified:
    wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/render/WebPageRenderer.java
    wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java

Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/render/WebPageRenderer.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/render/WebPageRenderer.java?rev=1091894&r1=1091893&r2=1091894&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/render/WebPageRenderer.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/render/WebPageRenderer.java Wed Apr 13 19:32:37 2011
@@ -235,8 +235,13 @@ public class WebPageRenderer extends Pag
 				response = renderPage(targetUrl2, requestCycle);
 			}
 
+			if (currentUrl.equals(targetUrl2))
+			{
+				// no need to redirect when both urls are exactly the same
+				response.writeTo((WebResponse)requestCycle.getResponse());
+			}
 			// if page is still stateless after render
-			if (getPage().isPageStateless() && !enableRedirectForStatelessPage())
+			else if (getPage().isPageStateless() && !enableRedirectForStatelessPage())
 			{
 				// we don't want the redirect to happen for stateless page
 				// example:

Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java?rev=1091894&r1=1091893&r2=1091894&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java Wed Apr 13 19:32:37 2011
@@ -552,6 +552,8 @@ public class WebPageRendererTest
 			}
 		};
 
+		when(provider.isNewPageInstance()).thenReturn(true);
+
 		Url sameUrl = Url.parse("same");
 
 		// needed for earlier checks