## Uses of Interface
org.springframework.web.context.ConfigurableWebApplicationContext

- Packages that use ConfigurableWebApplicationContext
  Package | Description
  --- | ---
  org.springframework.web.context | Contains a variant of the application context interface for web applications, and the ContextLoaderListener that bootstraps a root web application context.
  org.springframework.web.context.support | Classes supporting the `org.springframework.web.context` package, such as WebApplicationContext implementations and various utility classes.
  org.springframework.web.servlet | Provides servlets that integrate with the application context infrastructure, and the core interfaces and classes for the Spring web MVC framework.

- - ### Uses of ConfigurableWebApplicationContext in org.springframework.web.context

    Methods in org.springframework.web.context with parameters of type ConfigurableWebApplicationContext
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | ContextLoader.`configureAndRefreshWebApplicationContext(ConfigurableWebApplicationContext wac, ServletContext sc)`
    `protected void` | ContextLoader.`customizeContext(ServletContext sc, ConfigurableWebApplicationContext wac)` Customize the `ConfigurableWebApplicationContext` created by this ContextLoader after config locations have been supplied to the context but before the context is refreshed.

  - ### Uses of ConfigurableWebApplicationContext in org.springframework.web.context.support

    Classes in org.springframework.web.context.support that implement ConfigurableWebApplicationContext
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractRefreshableWebApplicationContext` `AbstractRefreshableApplicationContext` subclass which implements the `ConfigurableWebApplicationContext` interface for web environments.
    `class` | `AnnotationConfigWebApplicationContext` `WebApplicationContext` implementation which accepts component classes as input — in particular `@Configuration` classes, but also plain `@Component` classes as well as JSR-330 compliant classes using `javax.inject` annotations.
    `class` | `GenericWebApplicationContext` Subclass of `GenericApplicationContext`, suitable for web environments.
    `class` | `GroovyWebApplicationContext` `WebApplicationContext` implementation which takes its configuration from Groovy bean definition scripts and/or XML files, as understood by a `GroovyBeanDefinitionReader`.
    `class` | `StaticWebApplicationContext` Static `WebApplicationContext` implementation for testing.
    `class` | `XmlWebApplicationContext` `WebApplicationContext` implementation which takes its configuration from XML documents, understood by an `XmlBeanDefinitionReader`.

  - ### Uses of ConfigurableWebApplicationContext in org.springframework.web.servlet

    Methods in org.springframework.web.servlet with parameters of type ConfigurableWebApplicationContext
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | FrameworkServlet.`configureAndRefreshWebApplicationContext(ConfigurableWebApplicationContext wac)`
    `protected void` | FrameworkServlet.`postProcessWebApplicationContext(ConfigurableWebApplicationContext wac)` Post-process the given WebApplicationContext before it is refreshed and activated as context for this servlet.