JavaConfig provides the JavaConfigWebApplicationContext
class for bootstrapping your configurations into the web tier.
JavaConfigWebApplicationContext
allows for seamlessly bootstrapping
JavaConfig bean definitions within your servlet container's web.xml. This process requires
no Spring XML bean definitions whatsoever:
<web-app> <!-- Bootstrap the root application context as usual usingContextLoaderListener
--> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- ConfigureContextLoaderListener
to useJavaConfigWebApplicationContext
instead of the defaultXmlWebApplicationContext
--> <context-param> <param-name>contextClass</param-name> <param-value>org.springframework.config.java.JavaConfigWebApplicationContext</param-value> </context-param> <!-- Configuration locations must consist of one or more comma- or space-delimited fully-qualified@Configuration
classes --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>example.RootApplicationConfig</param-value> </context-param> <!-- Declare a Spring MVCDispatcherServlet
as usual --> <servlet> <servlet-name>test</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- ConfigureDispatcherServlet
to useJavaConfigWebApplicationContext
instead of the defaultXmlWebApplicationContext
--> <init-param> <param-name>contextClass</param-name> <param-value>org.springframework.config.java.JavaConfigWebApplicationContext</param-value> </init-param> <!-- Again, config locations must consist of one or more comma- or space-delimited and fully-qualified@Configuration
classes --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>example.web.WebBeansConfig</param-value> </init-param> </servlet> </web-app>
For basic information regarding initialization parameters to
DispatcherServlet
and use of
ContextLoaderListener
, see Chapter
13. Web MVC framework in the Core Spring Framework
documentation.