You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by ad...@apache.org on 2019/10/25 12:56:08 UTC

[wicket] 01/03: WICKET-6708 fix to avoid form submition break if request method is in uppercase form (ie: GET, POST)

This is an automated email from the ASF dual-hosted git repository.

adelbene pushed a commit to branch wicket-8.x
in repository https://gitbox.apache.org/repos/asf/wicket.git

commit bfaf1c44d62b86b93cebc3004755ab137053d50e
Author: Andrea Del Bene <an...@gmail.com>
AuthorDate: Fri Oct 25 11:45:41 2019 +0200

    WICKET-6708 fix to avoid form submition break if request method is in uppercase form (ie: GET, POST)
---
 .../org/apache/wicket/markup/html/form/FormComponent.java |  2 +-
 .../apache/wicket/markup/html/form/FormComponentTest.java | 15 +++++++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
index a0fc78e..f933368 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
@@ -815,7 +815,7 @@ public abstract class FormComponent<T> extends LabeledWebMarkupContainer impleme
 		}
 
 		final IRequestParameters parameters;
-		switch (method)
+		switch (method.toLowerCase())
 		{
 			case Form.METHOD_POST:
 				parameters = request.getPostParameters();
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormComponentTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormComponentTest.java
index 3a84940..87e3399 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormComponentTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormComponentTest.java
@@ -87,6 +87,21 @@ public class FormComponentTest extends WicketTestCase
 
 		assertTrue(validator.called);
 	}
+	
+	@Test
+    void upperCasePostSubmit() 
+	{
+	    tester.startPage(TestPage1.class);
+	    FormTester formTester = tester.newFormTester("form");
+	    
+	    formTester.setValue("field1", "foo");
+	    formTester.setValue("field2", "bar");
+	    tester.getRequest().setMethod("POST");
+	    formTester.submit();
+        
+        assertEquals("foo", formTester.getTextComponentValue("field1"));
+        assertEquals("bar", formTester.getTextComponentValue("field2"));
+    }
 
 	public static class TestPage1 extends WebPage implements IMarkupResourceStreamProvider
 	{