anchor.diff:  
   
   [[webflux-reactive-spring-web]]
  -== Reactive Spring Web
  -
  -The `spring-web` module provides low level infrastructure and HTTP abstractions -- client
  -and server, to build reactive web applications. All public APIs are built around Reactive
  -Streams with Reactor as a backing implementation.
  -
  -Server support is organized in two layers:
  -
  -* <<webflux-httphandler,HttpHandler>> and server adapters -- the most basic, common API
  -for HTTP request handling with Reactive Streams back pressure.
  -* <<webflux-web-handler-api>> -- slightly higher level but still general
  -purpose server web API with filter chain style processing.
  +== Reactive Core
  +
  +The `spring-web` module contains abstractions and infrastructure to build reactive web
  +applications. For server side processing this is organized in two distinct levels:
  +
  +* <<webflux-httphandler,HttpHandler>> -- basic, common API for HTTP request handling with
  +non-blocking I/O and (Reactive Streams) back pressure, along with adapters for each
  +supported server.
  +* <<webflux-web-handler-api>> -- slightly higher level, but still general purpose API for
  +server request handling, which underlies higher level programming models such as annotated
  +controllers and functional endpoints.
  +
  +The reactive core also includes <<webflux-codecs>> for client and server side use.
   
   
   
   [[webflux-httphandler]]
   === HttpHandler
   
  -Every HTTP server has some API for HTTP request handling.
   {api-spring-framework}/http/server/reactive/HttpHandler.html[HttpHandler]
  -is a simple contract with one method to handle a request and response.
  -It is intentionally minimal. Its main purpose is to provide a common, Reactive Streams
  -based API for HTTP request handling over different servers.
  -
  -The `spring-web` module contains adapters for every supported server. The table below shows
  -the server APIs are used and where Reactive Streams support comes from:
  +is a simple contract with a single method to handle a request and response. It is
  +intentionally minimal as its main purpose is to provide an abstraction over different
  +server APIs for HTTP request handling.
  +
  +Supported server APIs:
   
   [cols="1,2,2", options="header"]
   |===
  
positive.code: 
  
  include::web-uris.adoc[leveloffset=+2]
  
  
  
  
  include::webflux-functional.adoc[leveloffset=+1]
  
  
  
  
negative.code: |jetty-server, jetty-servlet
  |===
  
  Code snippets to adapt `HttpHandler` to each server API:
  
  *Reactor Netty*
  [source,java,indent=0]
  [subs="verbatim,quotes"]
  ----
  