Updated Branches: refs/heads/master 62fe0a96e -> beee594d9
WICKET-5083 Page#isPageStateless() may return wrong value Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/beee594d Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/beee594d Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/beee594d Branch: refs/heads/master Commit: beee594d98f82d1bf8b59c3c69dbe33eb1743091 Parents: 62fe0a9 Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Tue Mar 12 11:45:55 2013 +0100 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Tue Mar 12 11:45:55 2013 +0100 ---------------------------------------------------------------------- .../src/main/java/org/apache/wicket/Page.java | 2 + .../html/ajaxLink/AjaxLinkPageExpectedResult.html | 2 +- .../AjaxLinkWithBorderPageExpectedResult.html | 2 +- .../html/ajaxLink/AjaxPage2_ExpectedResult.html | 2 +- .../html/basic/SimplePageExpectedResult_13.html | 2 +- .../border/HideableBorderPage_ExpectedResult.html | 2 +- .../panel/InlinePanelPageExpectedResult_7.html | 2 +- .../panel/InlinePanelPageExpectedResult_8.html | 2 +- .../apache/wicket/page/PageStatelessnessTest.java | 54 +++++++++++++++ 9 files changed, 63 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/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 1467798..86c0472 100644 --- a/wicket-core/src/main/java/org/apache/wicket/Page.java +++ b/wicket-core/src/main/java/org/apache/wicket/Page.java @@ -450,6 +450,8 @@ public abstract class Page extends MarkupContainer implements IRedirectListener, if (stateless == null) { + internalInitialize(); + if (isStateless() == false) { stateless = Boolean.FALSE; http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html index 147a640..5cae1da 100644 --- a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html +++ b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html @@ -10,7 +10,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkPage"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkPage?0"; /*]]>*/ </script> <script type="text/javascript" > http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html index 1316cbc..aed0fb7 100644 --- a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html +++ b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html @@ -10,7 +10,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkWithBorderPage"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkWithBorderPage?0"; /*]]>*/ </script> <script type="text/javascript" > http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html index 1d0a909..1a0da1e 100644 --- a/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html +++ b/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html @@ -10,7 +10,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxPage2"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxPage2?0"; /*]]>*/ </script> <script type="text/javascript" > http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html b/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html index 15cea8a..0639e2e 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html @@ -13,7 +13,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.basic.SimplePage_13"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.basic.SimplePage_13?0"; /*]]>*/ </script> <link rel="stylesheet" type="text/css" href="../../BasePage.css" /> http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html b/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html index b227b6e..4745897 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html @@ -10,7 +10,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.border.HideableBorderPage"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.border.HideableBorderPage?0"; /*]]>*/ </script> <script type="text/javascript" > http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html b/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html index 26eb4e7..76e3382 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html @@ -10,7 +10,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_7"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_7?0"; /*]]>*/ </script> <script type="text/javascript" > http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html b/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html index b6d33ec..6c6238f 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html @@ -10,7 +10,7 @@ Wicket.Ajax.DebugWindow.enabled=true; </script> <script type="text/javascript" id="wicket-ajax-base-url"> /*<![CDATA[*/ -Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_8"; +Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_8?0"; /*]]>*/ </script> <script type="text/javascript" > http://git-wip-us.apache.org/repos/asf/wicket/blob/beee594d/wicket-core/src/test/java/org/apache/wicket/page/PageStatelessnessTest.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/page/PageStatelessnessTest.java b/wicket-core/src/test/java/org/apache/wicket/page/PageStatelessnessTest.java new file mode 100644 index 0000000..0340a95 --- /dev/null +++ b/wicket-core/src/test/java/org/apache/wicket/page/PageStatelessnessTest.java @@ -0,0 +1,54 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.wicket.page; + +import org.apache.wicket.Page; +import org.apache.wicket.WicketTestCase; +import org.apache.wicket.markup.html.WebPage; +import org.junit.Test; + +/** + * Tests for Page#isPageStateless + */ +public class PageStatelessnessTest extends WicketTestCase +{ + /** + * Tests that a page is not stateless if it adds stateful components in #onInitialize() + * https://issues.apache.org/jira/browse/WICKET-5083 + */ + @Test + public void isPageStatelessWithOnInitialize() + { + Page page = new TestPage(); + assertFalse(page.isPageStateless()); + } + + public static class TestPage extends WebPage + { + + public TestPage() + { + } + + @Override + protected void onInitialize() { + super.onInitialize(); + + setStatelessHint(false); + } + } +}
