From c472a163f114ba946974980be299deb0a7cb7f34 Mon Sep 17 00:00:00 2001 From: Rossen Stoyanchev Date: Thu, 8 Dec 2011 03:59:28 +0000 Subject: [PATCH] SPR-8572 Support Void.class as response type in RestTemplate. --- .../main/java/org/springframework/web/client/RestTemplate.java | 2 +- .../web/client/RestTemplateIntegrationTests.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/org.springframework.web/src/main/java/org/springframework/web/client/RestTemplate.java b/org.springframework.web/src/main/java/org/springframework/web/client/RestTemplate.java index f6c3c957145..94f957c686f 100644 --- a/org.springframework.web/src/main/java/org/springframework/web/client/RestTemplate.java +++ b/org.springframework.web/src/main/java/org/springframework/web/client/RestTemplate.java @@ -607,7 +607,7 @@ public class RestTemplate extends InterceptingHttpAccessor implements RestOperat private final HttpMessageConverterExtractor delegate; public ResponseEntityResponseExtractor(Class responseType) { - if (responseType != null) { + if (responseType != null && !Void.class.equals(responseType)) { this.delegate = new HttpMessageConverterExtractor(responseType, getMessageConverters(), logger); } else { this.delegate = null; diff --git a/org.springframework.web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java b/org.springframework.web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java index a4838a27675..edae6e4afc4 100644 --- a/org.springframework.web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java +++ b/org.springframework.web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java @@ -251,7 +251,7 @@ public class RestTemplateIntegrationTests { requestHeaders.set("MyHeader", "MyValue"); requestHeaders.setContentType(MediaType.TEXT_PLAIN); HttpEntity requestEntity = new HttpEntity(helloWorld, requestHeaders); - HttpEntity result = template.exchange(baseUrl + "/{method}", HttpMethod.POST, requestEntity, null, "post"); + HttpEntity result = template.exchange(baseUrl + "/{method}", HttpMethod.POST, requestEntity, Void.class, "post"); assertEquals("Invalid location", new URI(baseUrl + "/post/1"), result.getHeaders().getLocation()); assertFalse(result.hasBody()); }