anchor.diff:  
   
   [[webflux-logging-sensitive-data]]
  -==== Logging Sensitive Data
  +==== Sensitive Data
   [.small]#<<web.adoc#mvc-logging-sensitive-data,Same as in Spring MVC>>#
   
   `DEBUG` and `TRACE` logging can log sensitive information. This is why form parameters and
  
positive.code: 		// ...
  	}
  ----
  <1>
  ====
  
  Spring WebFlux, unlike Spring MVC, supports reactive types in the model -- for example,
  
negative.code: [[webflux-web-handler-api]]
  === `WebHandler` API
  
  The `org.springframework.web.server` package builds on the <<webflux-httphandler>> contract
  to provide a general-purpose web API for processing requests through a chain of multiple
  {api-spring-framework}/web/server/WebExceptionHandler.html[`WebExceptionHandler`], multiple
  {api-spring-framework}/web/server/WebFilter.html[`WebFilter`], and a single
  {api-spring-framework}/web/server/WebHandler.html[`WebHandler`] component. The chain can
  be put together with `WebHttpHandlerBuilder` by simply pointing to a Spring
  `ApplicationContext` where components are
  <<webflux-web-handler-api-special-beans,auto-detected>>, and/or by registering components
  with the builder.
  
  While `HttpHandler` has a simple goal to abstract the use of different HTTP servers, the
  `WebHandler` API aims to provide a broader set of features commonly used in web applications
  such as:
  
  * User session with attributes.
  * Request attributes.
  * Resolved `Locale` or `Principal` for the request.
  * Access to parsed and cached form data.
  * Abstractions for multipart data.
  * and more..
  
  [[webflux-web-handler-api-special-beans]]
  ==== Special bean types
  
  The table below lists the components that `WebHttpHandlerBuilder` can auto-detect in a
  Spring ApplicationContext, or that can be registered directly with it:
  
  [cols="2,2,1,3", options="header"]
  |===
  