Revert "WICKET-6608 Stateless page, mix of queue and add can cause unforseen"

This reverts commit 147f6d33f839edd9a6eb53ce9c20b4cde07fc938.


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

Branch: refs/heads/WICKET-6563
Commit: 6a0fdedba3383ebf5ebbc15e51ac56567955ecc1
Parents: 7b025ab
Author: Sven Meier <svenme...@apache.org>
Authored: Mon Dec 3 17:56:31 2018 +0100
Committer: Sven Meier <svenme...@apache.org>
Committed: Mon Dec 3 17:56:31 2018 +0100

----------------------------------------------------------------------
 .../handler/PageAndComponentProvider.java       | 50 +++++++-------------
 1 file changed, 18 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/6a0fdedb/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageAndComponentProvider.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageAndComponentProvider.java
 
b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageAndComponentProvider.java
index 785c4a7..0638c9b 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageAndComponentProvider.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageAndComponentProvider.java
@@ -158,10 +158,27 @@ public class PageAndComponentProvider extends 
PageProvider implements IPageAndCo
                        component = page != null ? page.get(componentPath) : 
null;
                        if (component == null)
                        {
+
+                               /*
+                                * on stateless pages it is possible that the 
component may not yet exist because it
+                                * couldve been created in one of the lifecycle 
callbacks of this page. Lets invoke
+                                * the callbacks to give the page a chance to 
create the missing component.
+                                */
+
                                // make sure this page instance was just 
created so the page can be stateless
                                if (page.isPageStateless())
                                {
-                                       component = 
resolveStatelessPageComponent((Page)page);
+                                       Page p = (Page)page;
+                                       p.internalInitialize();
+                                       
+                                       // preparation of feedbacks is delayed 
into the render phase
+                                       try (FeedbackDelay delay = new 
FeedbackDelay(p.getRequestCycle())) {
+                                               p.beforeRender();
+                                               p.markRendering(false);
+                                               
+                                               // note: no invocation of 
delay.onBeforeRender() 
+                                       }
+                                       component = page.get(componentPath);
                                }
                        }
                }
@@ -174,37 +191,6 @@ public class PageAndComponentProvider extends PageProvider 
implements IPageAndCo
        }
 
        /**
-        * On stateless pages it is possible that the component may not yet 
exist because it
-        * could have been created in one of the lifecycle callbacks of this 
page. Lets invoke
-        * the callbacks to give the page a chance to create the missing 
component.
-        **/
-       private IRequestableComponent resolveStatelessPageComponent(Page page)
-       {
-               //1-first let's try initializing the page
-               page.internalInitialize();
-               
-               IRequestableComponent component = page.get(componentPath);
-
-               if (component != null)
-               {
-                       return component;
-               }
-               
-               //2-if component has not been found let's try rendering the page
-               
-               // preparation of feedbacks is delayed into the render phase
-               try (FeedbackDelay delay = new 
FeedbackDelay(page.getRequestCycle())) 
-               {
-                       page.beforeRender();
-                       page.markRendering(false);
-                       
-                       // note: no invocation of delay.onBeforeRender() 
-               }
-               
-               return page.get(componentPath);
-       }
-
-       /**
         * @see 
org.apache.wicket.core.request.handler.IPageAndComponentProvider#getComponentPath()
         */
        @Override

Reply via email to