From 312fa3ead9780f7ca169b3019934bf73710eb610 Mon Sep 17 00:00:00 2001 From: Oemer Yildiz Date: Mon, 13 Apr 2015 14:41:08 +0200 Subject: [PATCH] #331 - Fixed handling of @RequestParam with default value set. ControllerLinkBuilderFactory now checks the default value of an @RequestParam annotated handler method parameter before triggering strict validation. Original pull request: #332. --- .../mvc/ControllerLinkBuilderFactory.java | 5 ++++- .../mvc/ControllerLinkBuilderUnitTest.java | 19 ++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java b/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java index 65603ce2..20fb052e 100644 --- a/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java +++ b/src/main/java/org/springframework/hateoas/mvc/ControllerLinkBuilderFactory.java @@ -41,6 +41,7 @@ import org.springframework.util.MultiValueMap; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ValueConstants; import org.springframework.web.util.UriComponents; import org.springframework.web.util.UriComponentsBuilder; import org.springframework.web.util.UriTemplate; @@ -53,6 +54,7 @@ import org.springframework.web.util.UriTemplate; * @author Dietrich Schulten * @author Kamill Sokol * @author Ross Turner + * @author Oemer Yildiz */ public class ControllerLinkBuilderFactory implements MethodLinkBuilderFactory { @@ -233,7 +235,8 @@ public class ControllerLinkBuilderFactory implements MethodLinkBuilderFactory methodForOptionalNextPage(@RequestParam(required = false) Integer offset) { return null; } + + @RequestMapping(value = "/bar") + HttpEntity methodForOptionalSizeWithDefaultValue(@RequestParam(defaultValue = "10") Integer size) { + return null; + } } @RequestMapping("/parent")