Author: jcompagner Date: Fri Nov 2 18:14:00 2007 New Revision: 591530 URL: http://svn.apache.org/viewvc?rev=591530&view=rev Log: large test for all the url coding strategies. With stateless forms in stateless pages and in statefull pages
Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.java wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.java wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_Result.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_SubmitResult.html wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessStatefullUrlCodingStrategyTest.java Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link rel="stylesheet" type="text/css" href="style.css" /> + </head> + <body> + <br /> + <a wicket:id="indexLink" href="#">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a wicket:id="actionLink">Link clicked <span + wicket:id="linkClickCount">0</span> times</a> + </p> + + + <p> + <form wicket:id="statelessform"> + <input type="text" wicket:id="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback" /> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.java URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.java?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.java (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage.java Fri Nov 2 18:14:00 2007 @@ -0,0 +1,102 @@ +/* + * 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.request.target.coding; + +import org.apache.wicket.markup.html.WebPage; +import org.apache.wicket.markup.html.autolink.Index; +import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.form.StatelessForm; +import org.apache.wicket.markup.html.form.TextField; +import org.apache.wicket.markup.html.link.BookmarkablePageLink; +import org.apache.wicket.markup.html.link.Link; +import org.apache.wicket.markup.html.panel.FeedbackPanel; +import org.apache.wicket.model.Model; +import org.apache.wicket.model.PropertyModel; + +/** + * Another page of the stateless example. + * + * @author Eelco Hillenius + */ +public class StatefulPage extends WebPage +{ + private static final long serialVersionUID = 1L; + + /** click count for Link. */ + private int linkClickCount = 0; + + /** + * Construct. + */ + public StatefulPage() + { + add(new BookmarkablePageLink("indexLink", Index.class)); + + // Action link counts link clicks + final Link actionLink = new Link("actionLink") + { + private static final long serialVersionUID = 1L; + + public void onClick() + { + linkClickCount++; + } + }; + add(actionLink); + actionLink.add(new Label("linkClickCount", new PropertyModel(this, "linkClickCount"))); + + final TextField field = new TextField("textfield", new Model()); + + StatelessForm statelessForm = new StatelessForm("statelessform") + { + private static final long serialVersionUID = 1L; + + /** + * @see org.apache.wicket.markup.html.form.Form#onSubmit() + */ + protected void onSubmit() + { + info("Submitted text: " + field.getModelObject() + ", link click count: " + + linkClickCount); + } + }; + statelessForm.add(field); + add(statelessForm); + add(new FeedbackPanel("feedback")); + } + + /** + * Gets linkClickCount. + * + * @return linkClickCount + */ + public int getLinkClickCount() + { + return linkClickCount; + } + + /** + * Sets linkClickCount. + * + * @param linkClickCount + * linkClickCount + */ + public void setLinkClickCount(int linkClickCount) + { + this.linkClickCount = linkClickCount; + } +} \ No newline at end of file Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,36 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">0</span> times</a> + </p> + + + <p> + <form action="statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Default_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,40 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">0</span> times</a> + </p> + + + <p> + <form action="statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test, link click count: 0</span> + </li> + </ul> +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,36 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">0</span> times</a> + </p> + + + <p> + <form action="statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Hybrid_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,40 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">1</span> times</a> + </p> + + + <p> + <form action="statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test, link click count: 1</span> + </li> + </ul> +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,36 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">0</span> times</a> + </p> + + + <p> + <form action="statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_Indexed_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,40 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">1</span> times</a> + </p> + + + <p> + <form action="statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test, link click count: 1</span> + </li> + </ul> +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,36 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">0</span> times</a> + </p> + + + <p> + <form action="statefull/?wicket:interface=%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatefulPage_QueryString_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,40 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <p> + This page is stateful as it has a callback (the link that points to + this page). If the actual session wasn't created before, this page + triggered it's creation. + </p> + + <p> + This link is what makes this page stateful: + <br /> + <a href="?wicket:interface=:0:actionLink::ILinkListener::" wicket:id="actionLink">Link clicked <span wicket:id="linkClickCount">1</span> times</a> + </p> + + + <p> + <form action="statefull/?wicket:interface=%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + </p> + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test, link click count: 1</span> + </li> + </ul> +</wicket:panel></span> + </p> + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link rel="stylesheet" type="text/css" href="style.css" /> + </head> + <body> + <br /> + <a wicket:id="indexLink" href="#">go to index</a> + + <form wicket:id="statelessform"> + <input type="text" wicket:id="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback" /> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.java URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.java?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.java (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage.java Fri Nov 2 18:14:00 2007 @@ -0,0 +1,62 @@ +/* + * 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.request.target.coding; + +import org.apache.wicket.markup.html.WebPage; +import org.apache.wicket.markup.html.autolink.Index; +import org.apache.wicket.markup.html.form.StatelessForm; +import org.apache.wicket.markup.html.form.TextField; +import org.apache.wicket.markup.html.link.BookmarkablePageLink; +import org.apache.wicket.markup.html.panel.FeedbackPanel; +import org.apache.wicket.model.Model; + +/** + * Another page of the stateless example. + * + * @author Eelco Hillenius + */ +public class StatelessPage extends WebPage +{ + private static final long serialVersionUID = 1L; + + /** + * Constructor + */ + public StatelessPage() + { + setStatelessHint(true); + add(new BookmarkablePageLink("indexLink", Index.class)); + final TextField field = new TextField("textfield", new Model()); + field.setRequired(true); + + StatelessForm statelessForm = new StatelessForm("statelessform") + { + private static final long serialVersionUID = 1L; + + /** + * @see org.apache.wicket.markup.html.form.Form#onSubmit() + */ + protected void onSubmit() + { + info("Submitted text: " + field.getModelObject()); + } + }; + statelessForm.add(field); + add(statelessForm); + add(new FeedbackPanel("feedback")); + } +} \ No newline at end of file Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,31 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="stateless/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Default_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,35 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../../../../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="../../../?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="../../../stateless/wicket:interface/%3A1%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform0"><div style="display:none"><input type="hidden" name="statelessform0_hf_0" id="statelessform0_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test</span> + </li> + </ul> +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,31 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="stateless/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Hybrid_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,35 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../../../../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="../../../?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="../../../stateless/wicket:interface/%3A1%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform0"><div style="display:none"><input type="hidden" name="statelessform0_hf_0" id="statelessform0_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test</span> + </li> + </ul> +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,31 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="stateless/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_Indexed_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,35 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../../../../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="../../../?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="../../../stateless/wicket:interface/%3A1%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/" wicket:id="statelessform" method="post" id="statelessform0"><div style="display:none"><input type="hidden" name="statelessform0_hf_0" id="statelessform0_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test</span> + </li> + </ul> +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_Result.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_Result.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_Result.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_Result.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,31 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="stateless/?wicket:interface=%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A" wicket:id="statelessform" method="post" id="statelessform2"><div style="display:none"><input type="hidden" name="statelessform2_hf_0" id="statelessform2_hf_0" /></div> + <input value="" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_SubmitResult.html URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_SubmitResult.html?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_SubmitResult.html (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessPage_QueryString_SubmitResult.html Fri Nov 2 18:14:00 2007 @@ -0,0 +1,35 @@ +<?xml version='1.0' encoding='UTF-8'?> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>Wicket Examples - stateless</title> + <link href="../../style.css" rel="stylesheet" type="text/css"/> + </head> + <body> + <br /> + <a href="../?wicket:bookmarkablePage=%3Aorg.apache.wicket.markup.html.autolink.Index" wicket:id="indexLink">go to index</a> + + <form action="../stateless/?wicket:interface=%3A1%3Astatelessform%3A%3AIFormSubmitListener%3A%3A" wicket:id="statelessform" method="post" id="statelessform0"><div style="display:none"><input type="hidden" name="statelessform0_hf_0" id="statelessform0_hf_0" /></div> + <input value="test" type="text" wicket:id="textfield" name="textfield"> + <input type="submit"> + </form> + + <p> + This page is stateless as it doesn't have any callbacks (like statefull links or forms). + If a page doesn't have any, there is no use keeping it around in the + session. Furthermore, as long as you don't have any stateful pages, + the actual session creation will be deferred. A Wicket session object + is available, but is a temporary one. + </p> + + <p> + <span wicket:id="feedback"><wicket:panel> + <ul wicket:id="feedbackul"> + <li wicket:id="messages" class="feedbackPanelINFO"> + <span wicket:id="message" class="feedbackPanelINFO">Submitted text: test</span> + </li> + </ul> +</wicket:panel></span> + </p> + + </body> +</html> Added: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessStatefullUrlCodingStrategyTest.java URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessStatefullUrlCodingStrategyTest.java?rev=591530&view=auto ============================================================================== --- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessStatefullUrlCodingStrategyTest.java (added) +++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/request/target/coding/StatelessStatefullUrlCodingStrategyTest.java Fri Nov 2 18:14:00 2007 @@ -0,0 +1,223 @@ +/* + * 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.request.target.coding; + +import org.apache.wicket.WicketTestCase; + +/** + * Tests package resources. + * + * @author <a href="mailto:[EMAIL PROTECTED]">Jean-Baptiste Quenot</a> + */ +public class StatelessStatefullUrlCodingStrategyTest extends WicketTestCase +{ + + /** + * @throws Exception + */ + public void testStatelessQueryStringUrlCodingStrategy() throws Exception + { + tester.getApplication().mount( + new QueryStringUrlCodingStrategy("/stateless", StatelessPage.class)); + + executeTest(StatelessPage.class, "StatelessPage_QueryString_Result.html"); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/stateless/?wicket:interface=%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A"); + tester.processRequestCycle(); + tester.assertResultPage(StatelessPage.class, "StatelessPage_QueryString_SubmitResult.html"); + + } + + /** + * @throws Exception + */ + public void testStatefullQueryStringUrlCodingStrategy() throws Exception + { + tester.getApplication().mount( + new QueryStringUrlCodingStrategy("/statefull", StatefulPage.class)); + executeTest(StatefulPage.class, "StatefulPage_QueryString_Result.html"); + + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/?wicket:interface=:0:actionLink::ILinkListener::"); + tester.processRequestCycle(); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/statefull/?wicket:interface=%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A"); + tester.processRequestCycle(); + tester.assertResultPage(StatefulPage.class, "StatefulPage_QueryString_SubmitResult.html"); + + + } + + /** + * @throws Exception + */ + public void testStatelessDefaultUrlCodingStrategy() throws Exception + { + tester.getApplication().mountBookmarkablePage("/stateless", StatelessPage.class); + + executeTest(StatelessPage.class, "StatelessPage_Default_Result.html"); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/stateless/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + tester.assertResultPage(StatelessPage.class, "StatelessPage_Default_SubmitResult.html"); + + } + + /** + * @throws Exception + */ + public void testStatefullDefaultUrlCodingStrategy() throws Exception + { + tester.getApplication().mountBookmarkablePage("/statefull", StatefulPage.class); + executeTest(StatefulPage.class, "StatefulPage_Default_Result.html"); + + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + tester.assertResultPage(StatefulPage.class, "StatefulPage_Default_SubmitResult.html"); + + + } + + /** + * @throws Exception + */ + public void testStatelessIndexedUrlCodingStrategy() throws Exception + { + tester.getApplication().mount( + new IndexedParamUrlCodingStrategy("/stateless", StatelessPage.class)); + + executeTest(StatelessPage.class, "StatelessPage_Indexed_Result.html"); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/stateless/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + tester.assertResultPage(StatelessPage.class, "StatelessPage_Indexed_SubmitResult.html"); + + } + + /** + * @throws Exception + */ + public void testStatefullIndexedUrlCodingStrategy() throws Exception + { + tester.getApplication().mount( + new IndexedParamUrlCodingStrategy("/statefull", StatefulPage.class)); + executeTest(StatefulPage.class, "StatefulPage_Indexed_Result.html"); + + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/?wicket:interface=:0:actionLink::ILinkListener::"); + tester.processRequestCycle(); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + tester.assertResultPage(StatefulPage.class, "StatefulPage_Indexed_SubmitResult.html"); + + + } + + /** + * @throws Exception + */ + public void testStatelessHybridUrlCodingStrategy() throws Exception + { + tester.getApplication().mount( + new HybridUrlCodingStrategy("/stateless", StatelessPage.class)); + + executeTest(StatelessPage.class, "StatelessPage_Hybrid_Result.html"); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/stateless/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + tester.assertResultPage(StatelessPage.class, "StatelessPage_Hybrid_SubmitResult.html"); + + } + + /** + * @throws Exception + */ + public void testStatefullHybridUrlCodingStrategy() throws Exception + { + tester.getApplication() + .mount(new HybridUrlCodingStrategy("/statefull", StatefulPage.class)); + executeTest(StatefulPage.class, "StatefulPage_Hybrid_Result.html"); + + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/?wicket:interface=:0:actionLink::ILinkListener::"); + tester.processRequestCycle(); + + tester.setParameterForNextRequest("statelessform:textfield", "test"); + tester.setupRequestAndResponse(); + tester + .getServletRequest() + .setURL( + "/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/statefull/wicket:interface/%3A0%3Astatelessform%3A%3AIFormSubmitListener%3A%3A/"); + tester.processRequestCycle(); + tester.assertResultPage(StatefulPage.class, "StatefulPage_Hybrid_SubmitResult.html"); + + + } + +}