Subversion Repositories SmartDukaan

Rev

Rev 35385 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
21165 ashik.ali 1
package com.spice.profitmandi.web.config;
2
 
35387 amit 3
import java.util.EnumSet;
4
 
5
import javax.servlet.DispatcherType;
35385 amit 6
import javax.servlet.FilterRegistration;
21165 ashik.ali 7
import javax.servlet.ServletContext;
8
 
9
import javax.servlet.ServletException;
10
import javax.servlet.ServletRegistration;
11
 
23568 govind 12
import org.apache.logging.log4j.Logger;
13
import org.apache.logging.log4j.LogManager;
21165 ashik.ali 14
import org.springframework.web.WebApplicationInitializer;
15
import org.springframework.web.context.ContextLoaderListener;
16
import org.springframework.web.context.WebApplicationContext;
17
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
18
import org.springframework.web.servlet.DispatcherServlet;
19
 
35385 amit 20
import com.spice.profitmandi.common.web.filter.CorsFilter;
21
 
21165 ashik.ali 22
public class SpringWebAppInitializer implements WebApplicationInitializer{
23
 
23568 govind 24
	private static final Logger LOGGER=LogManager.getLogger(SpringWebAppInitializer.class);
21165 ashik.ali 25
 
26
	private static final String DISPATCHER_SERVLET_NAME="DispatcherServlet";
21220 ashik.ali 27
	private static final String SPRING_CONFIG_PACKAGE_LOCATION="com.spice.profitmandi.web.config";
21165 ashik.ali 28
 
29
	public void onStartup(ServletContext servletContext) throws ServletException {
30
		WebApplicationContext context = getContext();
31
        servletContext.addListener(new ContextLoaderListener(context));
32
        ServletRegistration.Dynamic dispatcher = servletContext.addServlet(DISPATCHER_SERVLET_NAME, new DispatcherServlet(context));
33
        dispatcher.setLoadOnStartup(1);
34
        dispatcher.addMapping("/");
35385 amit 35
 
36
        // Register CORS filter to handle CORS for all requests including error responses
37
        FilterRegistration.Dynamic corsFilter = servletContext.addFilter("corsFilter", new CorsFilter());
35387 amit 38
        corsFilter.addMappingForUrlPatterns(
39
                EnumSet.of(DispatcherType.REQUEST, DispatcherType.FORWARD, DispatcherType.INCLUDE, DispatcherType.ERROR),
40
                false,
41
                "/*"
42
        );
35385 amit 43
 
21165 ashik.ali 44
        LOGGER.info("Context is loaded");
45
	}
46
 
47
	private AnnotationConfigWebApplicationContext getContext() {
48
        AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
49
        context.setConfigLocation(SPRING_CONFIG_PACKAGE_LOCATION);
50
        return context;
51
    }
52
 
53
 
54
}