Sprin MVC configuration without web.xml

Inscription: 05 September 2017

Sprin MVC configuration without web.xml

Post By ozii » 05 September 2017, 18:12

hello all, can anyone tell me about the Spring MVC Config without web.Xml with good explanation?

Inscription: 13 September 2017

Re: Sprin MVC configuration without web.xml

Post By Emmanuel.expert » 13 September 2017, 20:24

With JEE6, if your application container is Servlet 3.0 ready what you need to do is:

  1. Create a custom class that implements ServletContainerInitializer (i.e. com.foo.FooServletContainer)
  2. Create a file in your META-INF/services folder named javax.servlet.ServletContainerInitializer which will contain the name of your implementation above (com.foo.FooServletContainer)

Spring 3 is bundled with a class named SpringServletContainerInitializer that implements the stuff above (so you don't need to create yourself the file in META-INF/services. This class just calls an implementation of WebApplicationInitializer. So you just need to provide one class implementing it in your classpath (the following code is taken from the doc above).

public class FooInitializer implements WebApplicationInitializer { @Override public void onStartup(ServletContext servletContext) { WebApplicationContext appContext = ...; ServletRegistration.Dynamic dispatcher = container.addServlet("dispatcher", new DispatcherServlet(appContext)); dispatcher.setLoadOnStartup(1); dispatcher.addMapping("/"); } }

That's it for the web.xml thing, but you need to configure the webapp using @Configuration@EnableWebMvc etc..