diff --git a/org.springframework.web/src/main/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolver.java b/org.springframework.web/src/main/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolver.java index 24f3f90dd9..91b8640a4c 100644 --- a/org.springframework.web/src/main/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolver.java +++ b/org.springframework.web/src/main/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolver.java @@ -194,7 +194,7 @@ public class RequestParamMethodArgumentResolver extends AbstractNamedValueMethod private class RequestParamNamedValueInfo extends NamedValueInfo { private RequestParamNamedValueInfo() { - super("", true, ValueConstants.DEFAULT_NONE); + super("", false, ValueConstants.DEFAULT_NONE); } private RequestParamNamedValueInfo(RequestParam annotation) { diff --git a/org.springframework.web/src/test/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolverTests.java b/org.springframework.web/src/test/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolverTests.java index 1088450320..98f4e3c0d3 100644 --- a/org.springframework.web/src/test/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolverTests.java +++ b/org.springframework.web/src/test/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolverTests.java @@ -16,6 +16,7 @@ package org.springframework.web.method.annotation.support; +import static org.junit.Assert.*; import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -221,6 +222,14 @@ public class RequestParamMethodArgumentResolverTests { assertEquals("plainValue", result); } + // SPR-8561 + + @Test + public void resolveSimpleTypeParamToNull() throws Exception { + Object result = resolver.resolveArgument(paramStringNotAnnot, null, webRequest, null); + assertNull(result); + } + public void params(@RequestParam(value = "name", defaultValue = "bar") String param1, @RequestParam("name") String[] param2, @RequestParam("name") Map param3,