The Figure in "Figure 17.2. Context hierarchy in Spring Web MVC" can be improved.
What is the significance of the blue two-headed arrows? Does it mean anything?
Why is the "WebApplicationContext(s)" having an "(s)"? It is the root application context if I am not wrong. There is only 1 if I am not wrong.
Why is the box of "WebApplicationContext(s)" showing multiple boxes? Does it represent multiple XML files forming one context? If so, it is not important to put it so, as any context is understood to possibly come from multiple XML files (or java config, etc.).
The blue arrows look like they represent the steps including invocation and what's being returned from each participant. As for the multiple "root" WebApplicationContexts, I believe in most cases it should be one context but there are some cases with EAR deployment where there can be a parent of the root context. Assuming I am correct we should simplify the diagram a bit.