Skip to content

Commit c472a16

Browse files
committed
SPR-8572 Support Void.class as response type in RestTemplate.
1 parent 6f150e4 commit c472a16

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

org.springframework.web/src/main/java/org/springframework/web/client/RestTemplate.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -607,7 +607,7 @@ private class ResponseEntityResponseExtractor<T> implements ResponseExtractor<Re
607607
private final HttpMessageConverterExtractor<T> delegate;
608608

609609
public ResponseEntityResponseExtractor(Class<T> responseType) {
610-
if (responseType != null) {
610+
if (responseType != null && !Void.class.equals(responseType)) {
611611
this.delegate = new HttpMessageConverterExtractor<T>(responseType, getMessageConverters(), logger);
612612
} else {
613613
this.delegate = null;

org.springframework.web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ public void exchangePost() throws Exception {
251251
requestHeaders.set("MyHeader", "MyValue");
252252
requestHeaders.setContentType(MediaType.TEXT_PLAIN);
253253
HttpEntity<String> requestEntity = new HttpEntity<String>(helloWorld, requestHeaders);
254-
HttpEntity<?> result = template.exchange(baseUrl + "/{method}", HttpMethod.POST, requestEntity, null, "post");
254+
HttpEntity<Void> result = template.exchange(baseUrl + "/{method}", HttpMethod.POST, requestEntity, Void.class, "post");
255255
assertEquals("Invalid location", new URI(baseUrl + "/post/1"), result.getHeaders().getLocation());
256256
assertFalse(result.hasBody());
257257
}

0 commit comments

Comments
 (0)