Update ref docs on ResponseEntity and reactive types

Issue: SPR-17400
This commit is contained in:
Rossen Stoyanchev 2018-10-23 16:42:31 -04:00
parent 42b7c5a79b
commit 2eae37dde0
2 changed files with 25 additions and 16 deletions

View File

@ -2414,22 +2414,26 @@ configure or customize message writing.
==== `ResponseEntity`
[.small]#<<web.adoc#mvc-ann-responseentity,Same as in Spring MVC>>#
Using `ResponseEntity` is more or less identical to using <<webflux-ann-responsebody>> but is based
on a container object that specifies request headers and body. The following example uses `ResponseEntity`:
`ResponseEntity` is like <<webflux-ann-responsebody>> but with status and headers. For example:
====
[source,java,indent=0]
[subs="verbatim,quotes"]
----
@PostMapping("/something")
@GetMapping("/something")
public ResponseEntity<String> handle() {
// ...
URI location = ...
return new ResponseEntity.created(location).build();
String body = ... ;
String etag = ... ;
return ResponseEntity.ok().eTag(etag).build(body);
}
----
====
WebFlux supports using a single value <<webflux-reactive-libraries,reactive type>> to
produce the `ResponseEntity` asynchronously, and/or single and multi-value reactive types
for the body.
[[webflux-ann-jackson]]

View File

@ -2789,22 +2789,26 @@ See <<mvc-ann-jackson>> for details.
==== ResponseEntity
[.small]#<<web-reactive.adoc#webflux-ann-responseentity,Same as in Spring WebFlux>>#
`ResponseEntity` is more or less identical to using <<mvc-ann-responsebody>> but is based
on a container object that specifies request headers and body. The following listing shows an example:
`ResponseEntity` is like <<mvc-ann-responsebody>> but with status and headers. For example:
====
[source,java,indent=0]
[subs="verbatim,quotes"]
----
@PostMapping("/something")
@GetMapping("/something")
public ResponseEntity<String> handle() {
// ...
URI location = ... ;
return ResponseEntity.created(location).build();
String body = ... ;
String etag = ... ;
return ResponseEntity.ok().eTag(etag).build(body);
}
----
====
Spring MVC supports using a single value <<mvc-ann-async-reactive-types,reactive type>>
to produce the `ResponseEntity` asynchronously, and/or single and multi-value reactive
types for the body.
[[mvc-ann-jackson]]
@ -3854,10 +3858,11 @@ customize the status and headers of the response.
=== Reactive Types
[.small]#<<web-reactive.adoc#webflux-codecs-streaming,Same as in Spring WebFlux>>#
Spring MVC supports use of reactive client libraries in a controller. This includes the
`WebClient` from `spring-webflux` and others, such as Spring Data reactive data
repositories. In such scenarios, it is convenient to be able to return reactive types
from the controller method .
Spring MVC supports use of reactive client libraries in a controller (also read
<<web-reactive.adoc#webflux-reactive-libraries,Reactive Libraries>> in the WebFlux section).
This includes the `WebClient` from `spring-webflux` and others, such as Spring Data
reactive data repositories. In such scenarios, it is convenient to be able to return
reactive types from the controller method.
Reactive return values are handled as follows: