Rossen Stoyanchev
7bfd683816
Eliminate the need for Encoder#getContentLength
...
Issue: SPR-16892
2018-06-04 16:01:48 -04:00
Juergen Hoeller
79adffd214
Upgrade to Hibernate Validator 6.0.10, RxJava 2.1.14, Gson 2.8.5
2018-05-30 11:59:57 +02:00
Juergen Hoeller
bbe5124556
Polishing
2018-05-29 22:16:48 +02:00
Juergen Hoeller
a2d7cc7a69
AbstractRequestLoggingFilter.isIncludeHeaders() declared as protected
...
Issue: SPR-16881
(cherry picked from commit c754232 )
2018-05-29 22:00:24 +02:00
Rossen Stoyanchev
a158ff4c3d
Return SslInfo only if X509Certificate[] present
...
Issue: SPR-16842
2018-05-23 14:58:23 -04:00
Rossen Stoyanchev
0b36c9437e
CodecConfigurer internal refactoring
...
Improve how HTTP message writers are obtained for general use vs for
multipart requests.
2018-05-21 21:15:17 -04:00
Rossen Stoyanchev
72e7687b80
Polish CodecConfigurer related classes
...
Functionally equivalent updates to package private classes to improve
the code and make it easier to understand.
2018-05-21 21:15:05 -04:00
Rossen Stoyanchev
e3e975d7f9
Support for SslInfo in ServerHttpRequest#mutate
...
Issue: SPR-16830
2018-05-17 17:29:33 -04:00
Juergen Hoeller
41ab177b6c
Fine-tuned assertions and related polishing
2018-05-05 14:59:13 +02:00
Juergen Hoeller
9f9481ec7b
Upgrade to Tomcat 8.5.31, Undertow 1.4.25, Jetty 9.4.10, Gson 2.8.4
...
Includes upgrade from Reactor snapshots to Bismuth SR9.
2018-05-05 13:17:44 +02:00
Juergen Hoeller
9dc538a7c6
Nullable HttpMethod parameter only on internal doExecute delegate
...
Issue: SPR-15540
(cherry picked from commit f8c2d7a )
2018-05-02 16:31:33 +02:00
Juergen Hoeller
d74a2730ec
SimpleClientHttpResponse catches any Exception on close
...
Issue: SPR-16773
(cherry picked from commit 21fad8e )
2018-05-02 16:07:22 +02:00
Juergen Hoeller
3e47f4564d
Fine-tuned assertions and related polishing in WebFlux builders
...
(cherry picked from commit 9bff5b4 )
2018-05-02 16:04:51 +02:00
Juergen Hoeller
a9548f93e4
Support for non-standard HTTP status in reactive ClientHttpResponse
...
Issue: SPR-16748
(cherry picked from commit a683472 )
2018-05-02 16:04:01 +02:00
Sebastien Deleuze
b55f69deb1
Support decoding Mono in Jaxb2XmlDecoder
...
Issue: SPR-16759
2018-05-02 11:57:40 +02:00
Rossen Stoyanchev
b0aa08a671
Consistent handling of URISyntaxException
...
Issue: SPR-16778
2018-04-30 21:05:08 -04:00
Johnny Lim
c6b60f0c00
Polish
2018-04-27 14:09:35 -04:00
sdeleuze
7aba6ca9d6
Fine tune WebFlux server logging verbosity
...
With this commit, WebFlux server uses warning instead of error log level
for request handling, and also just print the message instead of the
stacktrace which is mostly meaningless in reactive world.
Complementary to this change, Reactor Netty removed additional logging
as part of https://github.com/reactor/reactor-netty/issues/339 .
Issue: SPR-16688
2018-04-27 10:36:06 +02:00
sdeleuze
df6e690e33
Reuse PartBodyStreamStorageFactory in SynchronossPartGenerator
...
Issue: SPR-16727
2018-04-26 11:01:17 +02:00
Rossen Stoyanchev
f7376bdde3
Better assertion message in MockPart
...
Issue: SPR-16767
2018-04-25 10:00:18 -04:00
Rossen Stoyanchev
66bd277671
Use StringDecoder to split SSE stream
...
ServerSentEventHttpMessageReader had logic to split on new lines
and buffer until an empty new line (start of a new event). To account
for random data chunking, it later re-assembled the lines for each
event and split again on new lines. However bufferUntil was still
unreliable a chunk may contain nothing but a newline, which doesn't
necessarily mean an empty newline in the overall SSE stream.
This commit simplifies the above by delegating the splitting of the
stream along newlines to StringDecoder.
Issue: SPR-16744
2018-04-19 11:38:43 -04:00
Rossen Stoyanchev
567733d2a1
Restore handling of 0 bytes read
...
Issue: SPR-16728
2018-04-16 10:01:51 -04:00
Juergen Hoeller
0f91f4b960
Local XMLUnit dependency declarations with consistent version 2.5.1
...
Includes upgrade to Undertow 1.4.24.
(cherry picked from commit 0754833 )
2018-04-14 21:23:33 +02:00
Rossen Stoyanchev
c4296fa785
Remove write pausing in Undertow response
...
Using the simple example shown in the ticket but switching from
Mono<String> to Flux<String> (and 5,000,000 onNext calls) shows that
constant pausing causes significant overhead and is not worth the
trouble vs ignoring the onWritePossible in REQUESTED state.
Issue: SPR-16702
2018-04-11 14:37:35 -04:00
Rossen Stoyanchev
ab78854f1b
Avoid inifinite recursion in UndertowServerHttpResponse
...
Undertow does not provide a way to check if we can write so with the
current implementation of isWritePossible, deep recursion can occur
when writing slows down. We now use a flag to keep track of write
ChannelListener callbacks.
This commit also addresses a related issue in
AbstractListenerWriteProcessor that went undected since #3c2d186
where after a large (single) buffer that is not written fully, the
completion signal is processed before the all data is written.
Issue: SPR-16702
2018-04-11 14:37:19 -04:00
sdeleuze
eda2720471
Add default ctor to Reactive UrlBasedCorsConfigurationSource
...
Issue: SPR-16712
2018-04-11 14:41:06 +02:00
sdeleuze
3879179927
Document why "charset=UTF-8" is specified for JSON
...
Issue: SPR-14715
2018-04-09 12:01:21 +02:00
Juergen Hoeller
66a3a82fb3
Avoid reference to HandlerMethod class in ServerErrorException
...
This breaks the package dependency cycle between web.server/web.method and makes ServerErrorException more generally applicable. Includes deprecation of the plain reason constructor variant, in favor of providing a Method or MethodParameter context (which MatrixVariableMethodArgumentResolver does now).
2018-04-01 00:21:15 +02:00
Juergen Hoeller
28ea718d2d
Build setup allows for JDK 10 as source/test target compatibility
...
Includes upgrade to Groovy 2.4.15 and HtmlUnit 2.30.
Issue: SPR-16390
2018-03-31 23:17:31 +02:00
Rossen Stoyanchev
d9e17a62ce
Refine SyncInvocableHandlerMethod error handling
...
Ensure the error is wrapped as ServerErrorException
2018-03-31 12:06:24 -04:00
Juergen Hoeller
912c270f2b
Polishing
2018-03-31 17:49:21 +02:00
Rossen Stoyanchev
4454ffd2b1
Replace remaining use of block operator
2018-03-31 11:18:38 -04:00
Stephane Maldini
b8d32095a9
workaround multipart integration test using blocking receive inside netty thread
2018-03-30 15:43:11 -07:00
Juergen Hoeller
0bc01fcd55
Polishing
2018-03-30 13:42:23 +02:00
Rossen Stoyanchev
240d6f52c9
Replaces rather than prepend contextPath
...
Issue: SPR-16650
2018-03-29 18:17:29 -04:00
Juergen Hoeller
d553ddc5b3
Nullability refinements (based on IntelliJ IDEA 2018.1 introspection)
...
Issue: SPR-15756
2018-03-29 23:50:17 +02:00
igor-suhorukov
93abe0e94b
All branches in a conditional structure should not have exactly the same implementation
2018-03-29 23:33:50 +02:00
Rossen Stoyanchev
dd96c873e3
Improve docs on forwarded headers
...
Issue: SPR-16660
2018-03-29 16:11:01 -04:00
Rossen Stoyanchev
a546cf0a3b
Reject invalid forwarded headers
...
Issue: SPR-16660
2018-03-29 15:28:34 -04:00
Juergen Hoeller
b165475eb6
Polishing
2018-03-29 16:05:52 +02:00
Rossen Stoyanchev
f9e6ea5482
MvcResult returns asyncResult after asyncDispatch
...
Issue: SPR-16648
2018-03-28 22:15:16 -04:00
Juergen Hoeller
d95bbb6b1b
Test for hasError keeping body available in case of unknown status code
...
Issue: SPR-16604
2018-03-28 12:16:03 +02:00
Juergen Hoeller
b2d87abcbb
Polishing
2018-03-28 12:06:38 +02:00
Rossen Stoyanchev
5861e9685b
Always specify charset for form data requests
...
Issue: SPR-16613
2018-03-27 19:56:09 -04:00
igor-suhorukov
4aae6a6dda
Use Map.forEach instead of manual Map.Entry iteration wherever possible SPR-16646
2018-03-28 01:09:03 +02:00
Rossen Stoyanchev
f3994467c4
Refine ContentNegotiationStrategy contract
...
Consistently return "*/*" if no media types were requested rather than
an empty list. Existing code has to check for both in any case to see
if nothing was requested.
Issue: SPR-16624
2018-03-27 16:54:19 -04:00
Juergen Hoeller
e3d0ef6015
Use Map.forEach instead of manual Map.Entry iteration wherever possible
...
Issue: SPR-16646
2018-03-27 00:38:32 +02:00
Juergen Hoeller
10cb2ccaef
Avoid triggering lazy resolution in MultipartResolver.cleanupMultipart
...
Issue: SPR-16640
2018-03-27 00:25:05 +02:00
Rossen Stoyanchev
a989ea0867
Polish Synchronoss message reader
...
Issue: SPR-16639
2018-03-24 08:59:16 -04:00
Rossen Stoyanchev
0af847c01c
ServerSentEventHttpMessageReader internal refactoring
...
Eliminate use of .block() which Reactor now flags as illegal on
schedulers where that's not expected.
2018-03-23 19:01:11 -04:00