SPR-8561 Permit null values for simple controller method arguments types without annotations.

master
Rossen Stoyanchev 13 years ago
parent 3a6beb601e
commit 75ad185558
  1. 2
      org.springframework.web/src/main/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolver.java
  2. 9
      org.springframework.web/src/test/java/org/springframework/web/method/annotation/support/RequestParamMethodArgumentResolverTests.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) {

@ -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,

Loading…
Cancel
Save