1. 22 3月, 2019 2 次提交
  2. 21 3月, 2019 2 次提交
  3. 20 3月, 2019 4 次提交
  4. 16 3月, 2019 5 次提交
  5. 15 3月, 2019 1 次提交
  6. 13 3月, 2019 3 次提交
  7. 08 3月, 2019 1 次提交
  8. 07 3月, 2019 1 次提交
  9. 06 3月, 2019 1 次提交
  10. 25 2月, 2019 1 次提交
  11. 22 2月, 2019 2 次提交
    • J
      Upgrade to Hibernate Validator 5.4.3 and 6.0.15 · c3fa9006
      Juergen Hoeller 提交于
      c3fa9006
    • B
      Remove response content-type before error handling · e47f7ef7
      Brian Clozel 提交于
      Prior to this commit, the negotiated content-type during the request
      mapping phase would be kept as the response content-type header; this
      information is used when rendering the error response and prevents a new
      round of content negotiation to choose the media type that fits best.
      
      This commit removes the response content type information at the
      beginning of the error handling phase.
      
      Fixes gh-22452
      e47f7ef7
  12. 18 2月, 2019 2 次提交
    • S
      Add Coroutines support for WebClient and WebFlux.fn · 19f792db
      Sebastien Deleuze 提交于
      This commit is the first part of a more complete Coroutines
      support coming in Spring Framework 5.2. It introduces suspendable
      Kotlin extensions for Mono based methods in WebFlux classes like
      WebClient, ServerRequest, ServerResponse as well as a Coroutines
      router usable via `coRouter { }`.
      
      Coroutines extensions use `await` prefix or `AndAwait` suffix,
      and most are using names close to their Reactive counterparts,
      except `exchange` in `WebClient.RequestHeadersSpec`
      which translates to `awaitResponse`.
      
      Upcoming expected changes are:
       - Leverage `Dispatchers.Unconfined` (Kotlin/kotlinx.coroutines#972)
       - Expose extensions for `Flux` based API (Kotlin/kotlinx.coroutines#254)
       - Introduce interop with `CoroutineContext` (Kotlin/kotlinx.coroutines#284)
       - Support Coroutines in `ReactiveAdapterRegistry`
       - Support Coroutines for WebFlux annotated controllers
       - Fix return type of Kotlin suspending functions (gh-21058)
      
      See gh-19975
      19f792db
    • S
      Leverage RouterFunctions.Builder in RouterFunctionDsl · 1d866053
      Sebastien Deleuze 提交于
      Closes gh-22423
      1d866053
  13. 17 2月, 2019 1 次提交
  14. 12 2月, 2019 1 次提交
    • B
      Defer ExchangeFilterFunction to subscription time · d463598c
      Brian Clozel 提交于
      Prior to this commit, the `ExchangeFilterFunction` instances configured
      on a `WebClient` instance would be executed as soon as the `exchange`
      method would be called. This behavior is not consistent with the server
      side and can confuse filter developers as they'd need to manually
      `Mono.defer()` their implementations if they want to record metrics.
      
      This commit defers all `ExchangeFilterFunction` processing at
      subscription time.
      
      Fixes gh-22375
      d463598c
  15. 05 2月, 2019 4 次提交
  16. 25 1月, 2019 1 次提交
  17. 24 1月, 2019 1 次提交
  18. 22 1月, 2019 1 次提交
    • B
      Wrap DecodingException in DefaultServerRequest · d6aa589c
      Brian Clozel 提交于
      Prior to this commit, Spring WebFlux function would let
      `DecodingException` thrown by codecs bubble up to the web handler level.
      Since this exception is not handled by default there, the response would
      be turned into a HTTP 500 status.
      
      In the annotation model, `ArgumentResolver` implementations wrap this
      exception with a `ServerWebInputException`, which itself extends
      `ResponseStatusException`. The latter is supported by the error handling
      infrastructure as a HTTP 400 response.
      
      This commit ensures that `DecodingException` instances are properly
      wrapped in `ServerWebInputException` at the `ServerRequest` level
      directly, thus supporting all setup modes ("standalone" and through the
      `DispatcherHandler`).
      
      Fixes #22290
      d6aa589c
  19. 09 1月, 2019 1 次提交
  20. 08 1月, 2019 1 次提交
  21. 03 1月, 2019 1 次提交
    • R
      More accurate checks for presence of MediaType.ALL · 4b24bcb7
      Rossen Stoyanchev 提交于
      Typically a straight up equals as well as Collections#contains
      checks for MediaType.ALL is susceptible to the presence of
      media type parameters.
      
      This commits adds equalsTypeAndSubtype as well as an
      isPresentIn(Collection<MimeType>) methods to MimeType to faciliate
      with checks for MediaType.ALL.
      
      Issue: SPR-17550
      4b24bcb7
  22. 02 1月, 2019 1 次提交
  23. 25 12月, 2018 1 次提交
  24. 21 12月, 2018 1 次提交
    • B
      Write CharSequence instances to DataBuffers · 6361b0cb
      Brian Clozel 提交于
      Prior to this commit, one could write a `CharSequence` to an existing
      `DataBuffer` instance by turning it into a byte array or `ByteBuffer`
      first. This had the following disadvantages:
      
      1. Memory allocation was not efficient (not leveraging pooled memory
      when available)
      2. Dealing with `CharsetEncoder` is not always easy
      3. `DataBuffer` implementations, like `NettyDataBuffer` can use
      optimized implementations in some cases
      
      This commit adds a new `DataBuffer#write(CharSequence, Charset)` method
      for those cases and also an `ensureCapacity` method useful for checking
      that the current buffer has enough capacity to write to it..
      
      Issue: SPR-17558
      6361b0cb