diff --git a/org.springframework.web.servlet/src/test/java/org/springframework/web/servlet/mvc/annotation/ServletAnnotationControllerTests.java b/org.springframework.web.servlet/src/test/java/org/springframework/web/servlet/mvc/annotation/ServletAnnotationControllerTests.java index ea00315a008..acc7c57180a 100644 --- a/org.springframework.web.servlet/src/test/java/org/springframework/web/servlet/mvc/annotation/ServletAnnotationControllerTests.java +++ b/org.springframework.web.servlet/src/test/java/org/springframework/web/servlet/mvc/annotation/ServletAnnotationControllerTests.java @@ -1479,11 +1479,13 @@ public class ServletAnnotationControllerTests { } @InitBinder - public void initBinder(@RequestParam("param1") T p1, int param2) { + public void initBinder(@RequestParam("param1") String p1, @RequestParam(value="paramX", required=false) String px, int param2) { + assertNull(px); } @ModelAttribute - public void modelAttribute(@RequestParam("param1") T p1, int param2) { + public void modelAttribute(@RequestParam("param1") String p1, @RequestParam(value="paramX", required=false) String px, int param2) { + assertNull(px); } } @@ -1516,12 +1518,14 @@ public class ServletAnnotationControllerTests { @Override @InitBinder - public void initBinder(@RequestParam("param1") String p1, int param2) { + public void initBinder(@RequestParam("param1") String p1, @RequestParam(value="paramX", required=false) String px, int param2) { + assertNull(px); } @Override @ModelAttribute - public void modelAttribute(@RequestParam("param1") String p1, int param2) { + public void modelAttribute(@RequestParam("param1") String p1, @RequestParam(value="paramX", required=false) String px, int param2) { + assertNull(px); } } diff --git a/org.springframework.web/src/main/java/org/springframework/web/bind/annotation/support/HandlerMethodInvoker.java b/org.springframework.web/src/main/java/org/springframework/web/bind/annotation/support/HandlerMethodInvoker.java index 5c2ebf0714e..c5649ce2c85 100644 --- a/org.springframework.web/src/main/java/org/springframework/web/bind/annotation/support/HandlerMethodInvoker.java +++ b/org.springframework.web/src/main/java/org/springframework/web/bind/annotation/support/HandlerMethodInvoker.java @@ -358,7 +358,7 @@ public class HandlerMethodInvoker { RequestParam requestParam = (RequestParam) paramAnn; paramName = requestParam.value(); paramRequired = requestParam.required(); - paramDefaultValue = requestParam.defaultValue(); + paramDefaultValue = parseDefaultValueAttribute(requestParam.defaultValue()); break; } else if (ModelAttribute.class.isInstance(paramAnn)) {