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 2014/01/16 11:53:10 UTC

[05/10] git commit: WICKET-5471 Store the page if it is known that it will be used in a following request

WICKET-5471 Store the page if it is known that it will be used in a following request

Better fix.
The page will be touched (i.e. stored). But it won't be initialized unless really used because setStatelessHint(false) is called as well.

(cherry picked from commit 3fca3415b46af58591463c7a1c8843c0e9f894ac)


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

Branch: refs/heads/sandbox/preserve-page-parameters-and-execute-listener-interface-after-expiration
Commit: a391ff3fe2cf3bbd9aa9afa7b2810df2b0b47d28
Parents: c2b49a6
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Wed Jan 15 10:10:27 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Wed Jan 15 10:12:01 2014 +0200

----------------------------------------------------------------------
 wicket-core/src/main/java/org/apache/wicket/Page.java        | 3 ++-
 .../java/org/apache/wicket/request/cycle/RequestCycle.java   | 8 +++++---
 2 files changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/a391ff3f/wicket-core/src/main/java/org/apache/wicket/Page.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/Page.java b/wicket-core/src/main/java/org/apache/wicket/Page.java
index a58ad9a..6d1dd44 100644
--- a/wicket-core/src/main/java/org/apache/wicket/Page.java
+++ b/wicket-core/src/main/java/org/apache/wicket/Page.java
@@ -965,7 +965,8 @@ public abstract class Page extends MarkupContainer implements IRedirectListener,
 	{
 		setStatelessHint(false);
 
-		internalInitialize();
+		// make sure the page will be available on following request
+		getSession().getPageManager().touchPage(this);
 
 		return new PageReference(numericId);
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a391ff3f/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 3eaed6a..87bdafe 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
@@ -660,10 +660,12 @@ public class RequestCycle implements IRequestCycle, IEventSink
 	{
 		if (page instanceof Page)
 		{
-			Page _page = (Page) page;
-			_page.setStatelessHint(false);
-			_page.internalInitialize();
+			((Page) page).setStatelessHint(false);
 		}
+
+		// make sure the page will be available on following request
+		Session.get().getPageManager().touchPage(page);
+
 		scheduleRequestHandlerAfterCurrent(new RenderPageRequestHandler(new PageProvider(page),
 			RenderPageRequestHandler.RedirectPolicy.AUTO_REDIRECT));
 	}