Commit Graph

228 Commits

Author SHA1 Message Date
Arjen Poutsma
fedbb09ad9 Improve RouterFunctions reference documentation
Changed WebFlux.fn docs to use router function builder.

Issue: SPR-17016
2018-11-23 17:48:11 +01:00
Rossen Stoyanchev
d6a5c3428b Improve docs on STOMP / WebSocket frame max size
Issue: SPR-17514
2018-11-20 21:59:47 -05:00
Rossen Stoyanchev
24848ec1bc Configurable TcpClient for ReactorNettyTcpClient
Issue: SPR-17523
2018-11-20 21:20:21 -05:00
Jay Bryant
b9603680bc Fixing typoes
Jim Showalter found two typoes in the web section. This PR fixes them. Thanks, Jim.
2018-11-14 16:10:17 -05:00
Rossen Stoyanchev
c187cb2fa1 Ensure client response is drained with onStatus hook
Issue: SPR-17473
2018-11-08 22:41:22 -05:00
Juergen Hoeller
5e7a8b275d Polishing 2018-11-05 19:33:24 +01:00
Brian Clozel
2a41067a17 Update reactive streams spec URL in ref docs 2018-10-29 15:10:03 +01:00
Rossen Stoyanchev
4faee165db Documentation updates for working with DataBuffers
Issue: SPR-17409
2018-10-25 23:46:39 -04:00
Rossen Stoyanchev
8223ed38c8 Polish Reactive Core and Codecs sections
Issue: SPR-17409
2018-10-25 23:45:09 -04:00
Juergen Hoeller
a61d107606 Asciidoc revision (chapter declarations, javadoc references, etc) 2018-10-25 15:15:58 +02:00
Juergen Hoeller
f0f1979fc5 Support for @RequestParam Map declared with MultipartFile/Part values
Issue: SPR-17405
2018-10-24 20:44:58 +02:00
Rossen Stoyanchev
2eae37dde0 Update ref docs on ResponseEntity and reactive types
Issue: SPR-17400
2018-10-23 16:42:31 -04:00
Juergen Hoeller
1c67ef4bed ConfigurableWebApplicationContext needed for contextClass parameter
Issue: SPR-17414
2018-10-22 15:14:08 +02:00
Tomasz Nurkiewicz
2255d222e3 Fix punctuation in reference manual (#1992) 2018-10-13 11:44:49 +03:00
Rossen Stoyanchev
9630445253 Add sections on form and multipart codecs
Explain the need for consistent use of ServerWebExchange for access to
the parsed (and cached) form data or multipart data.

Issue: SPR-17291
2018-10-05 21:27:07 -04:00
Rossen Stoyanchev
1c90d481d5 Rename Motivation to Overview and restore sub-sections 2018-10-05 16:37:56 -04:00
Rossen Stoyanchev
d16a710d13 Polish WebFlux codecs section in the docs 2018-10-05 16:36:19 -04:00
Rossen Stoyanchev
4d24503317 Restore sub-section headings in web content
Headings are optimized for how they appear in the left-hand side
navitation menu, with context provided by parent headings, and not
necessarily for how they read on their own.

At 2nd and 3rd level of nesting, which is where most headings are,
the wrapping becomes too distracting and the left-hand side navigation
sprawling.
2018-10-05 15:54:38 -04:00
0xflotus
fc03707445 fixed ContentNegotiationConfigurer 2018-10-01 21:47:46 +02:00
Rossen Stoyanchev
7aa933437c Update links to http://java.net/jira 2018-10-01 12:01:28 -04:00
Sam Brannen
9e2912e1dd Fix source code callouts in Reference Manual 2018-09-23 13:30:17 +02:00
Jay Bryant
6d226326c9 Editing pass for the integration and languages chapters.
I edited for spelling, puncutation, grammar, usage, and corporate voice. I also added a bunch of cross-references and links to the Javadoc.

I also corrected the rendering problems that I had accidentally created in previous commits (because I was adjusting headings and adding callouts to listings.
2018-09-21 23:27:03 +02:00
Sam Brannen
45ecfc6df9 Fix source code callouts in Reference Manual 2018-09-21 16:33:04 +02:00
Sam Brannen
59e87f950b Fix heading levels in Reference Manual 2018-09-21 16:32:06 +02:00
Rossen Stoyanchev
92b3f2aee7 Document timeout configuration for Reactor HttpClient
Issue: SPR-17241
2018-09-20 10:38:28 -04:00
Jay Bryant
00a3afcda8 Edit the Web chapter of the reference documentation
I edited for spelling, punctuation, grammar, usage,
and corporate voice. I also added links and cross-references.
2018-09-18 11:37:48 +02:00
Rossen Stoyanchev
d537a1cfb4 Refine ReactorResourceFactory
1. Rename globalResources to useGlobalResources.
2. Use of global resources is mutually exlusive with explicit config.
3. Allow Consumer<HttpResources> to configure global resources.
4. Allow ConnectionProvider + LoopResources Supplier to customize
   creation and initialization.
5. Do not manage externally provided ConnectionProvider + LoopResources
   instances.

Issue: SPR-17243
2018-09-05 21:17:04 -04:00
Kyle Carter
8848e6ab9f Fix usage of deprecated functionality in docs
Closes gh-1934
2018-08-20 09:43:11 +02:00
Sebastien Deleuze
1eb06fcd90 Introduce JettyResourceFactory
JettyResourceFactory, similar to ReactorResourceFactory, allows
to share resources (Executor, ByteBufferPool, Scheduler) between
Jetty clients and servers.

Issue: SPR-17179
2018-08-16 18:17:07 +02:00
Rossen Stoyanchev
31c7807ac9 Fix doc issue with Reactor HttpClient config 2018-08-16 18:21:00 +03:00
Sam Brannen
4d7b265258 Fix merge conflict in reference manual 2018-08-15 15:37:49 +02:00
Brian Clozel
f2506ca7a1 Revert "Infer HTTP 404 from empty Optional/Publisher types"
This reverts commit 7e91733502.
2018-08-15 15:15:35 +02:00
Sam Brannen
a87b319a6f Polishing 2018-08-15 12:16:47 +02:00
Brian Clozel
7e91733502 Infer HTTP 404 from empty Optional/Publisher types
This commit handles "empty" cases for `ResponseEntity` controller
handler return types when wrapped with a `java.util.Optional` in Spring
MVC or a single `Publisher` like `Mono`.

Given the following example for Spring MVC:

```
@GetMapping("/user")
public Optional<ResponseEntity<User>> fetchUser() {
	Optional<User> user = //...
	return user.map(ResponseEntity::ok);
}
```

If the resulting `Optional` is empty, Spring MVC will infer a
`ResponseEntity` with an empty body and a 404 HTTP response status.

The same reasoning is applied to Spring WebFlux with Publisher types:

```
@GetMapping("/user")
public Mono<ResponseEntity<User>> fetchUser() {
	Mono<User> user = //...
	return user.map(ResponseEntity::ok);
}
```

This feature is only valid for `HttpEntity` return types and does not
apply to `@ResponseBody` controller handlers.

Issue: SPR-13281
2018-08-15 11:59:16 +02:00
Juergen Hoeller
c0c9e08bf9 Revised documentation for PDF, Excel and JSON views
Issue: SPR-17180
Issue: SPR-17182
2018-08-14 20:36:29 +02:00
Rossen Stoyanchev
3e4d305291 Polish ReactorResourceFactory 2018-08-14 17:34:17 +03:00
Rossen Stoyanchev
7a0c03e05e Update section in reference on WebClient
Rename "Builder" sub-section to "Configuration" and move it in the
beginning before all others since it explains how to create a client
in the first place.

Update content on Reactor Netty connector based on the API in 0.8 and
specifically address Reactor Netty resources and lifecycle.

Issue: SPR-16963
2018-08-14 15:48:46 +03:00
Stephane Nicoll
8d08935c49 Disable quotes substitution in code sample
Issue: SPR-17167
2018-08-12 11:12:53 +02:00
Rossen Stoyanchev
57ded51de0 Fix link from Spring MVC to OXM chapter 2018-08-09 10:28:08 +03:00
Juergen Hoeller
58e9706991 Polishing 2018-08-09 02:26:36 +02:00
Rossen Stoyanchev
a0dfdfcac3 Hierarchy under WebClientResponseException
Issue: SPR-17145
2018-08-08 15:34:08 +03:00
Kazuhiro Sera
be211ceead Fix typos detected by github.com/client9/misspell 2018-08-08 12:50:46 +02:00
Rossen Stoyanchev
a8a1fc6de5 Earlier processing of forwarded headers
Forwarded headers are now processed before ServerWebExchange is created
through ForwardedHeaderTransformer which has the same logic as the
ForwardedHeaderFilter but works on the request only.

ForwardedHeaderFilter is deprecated as of 5.1 but if registered it is
removed from the list of filters and ForwardedHeaderTransformer is used
instead.

Issue: SPR-17072
2018-08-03 15:16:09 +03:00
Rossen Stoyanchev
65d5cb3663 Typo in URI Encoding section
Issue: SPR-17104
2018-07-31 23:27:00 +03:00
Rossen Stoyanchev
31024b1f93 Add sections on logging for Spring MVC and WebFlux
Issue: SPR-17032
2018-07-31 23:06:48 +03:00
Pascal Schumacher
aa656c47b8 Fix typo in notes on future deprecation of the RestTemplate
Issue: SPR-16993

Obvious Fix
2018-07-27 14:13:19 -04:00
Rossen Stoyanchev
91d17cf628 Add notes on future deprecation of the RestTemplate
Issue: SPR-16993
2018-07-27 08:41:20 -04:00
sdeleuze
36a07aa897 Support Protobuf serialization in WebFlux
This commit introduces Protobuf support in WebFlux via dedicated
codecs.

Flux<Message> are serialized/deserialized using delimited Protobuf
messages with the size of each message specified before the message
itself. In that case, a "delimited=true" parameter is added to the
content type.

Mono<Message> are expected to use regular Protobuf message
format (without the size prepended before the message).

Related HttpMessageReader/Writer are automatically registered when the
"com.google.protobuf:protobuf-java" library is detected in the classpath,
and can be customized easily if needed via CodecConfigurer, for example
to specify protocol extensions via the ExtensionRegistry based
constructors.

Both "application/x-protobuf" and "application/octet-stream" mime types
are supported.

Issue: SPR-15776
2018-07-25 01:17:06 +02:00
Rossen Stoyanchev
2fdb8c9c8c Update STOMP section on working with subscriptions
1. Revise @SubscribeMapping to address common points of confusion.
2. Add ExecutorSubsribableChannel.
3. Split Events and Interception in two.

Issue: SPR-16950
2018-07-24 12:23:13 -04:00
Rossen Stoyanchev
9b2c8404dc "Order of messages" in STOMP section of reference docs
Issue: SPR-13989
2018-07-24 12:23:13 -04:00