Skip to content

Instantly share code, notes, and snippets.

@kumar935
Created May 26, 2016 10:06
Show Gist options
  • Select an option

  • Save kumar935/553204277e6cddcaf56ef0b4e1c28aec to your computer and use it in GitHub Desktop.

Select an option

Save kumar935/553204277e6cddcaf56ef0b4e1c28aec to your computer and use it in GitHub Desktop.
Application.java spring mvc to boot
package com.snapdeal.olp.web;
import com.snapdeal.olp.web.listener.StartupContextListener;
import jdk.nashorn.internal.runtime.logging.DebugLogger;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.context.embedded.FilterRegistrationBean;
import org.springframework.boot.context.embedded.ServletContextInitializer;
import org.springframework.boot.context.embedded.ServletRegistrationBean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.ContextLoaderListener;
import org.springframework.web.filter.CharacterEncodingFilter;
import org.springframework.web.filter.DelegatingFilterProxy;
import org.springframework.web.servlet.DispatcherServlet;
import org.tuckey.web.filters.urlrewrite.UrlRewriteFilter;
import javax.swing.*;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
@EnableAutoConfiguration
@ComponentScan({ "com.snapdeal.*.web" })
public class Application {
private static final Logger LOG = LoggerFactory.getLogger(Application.class);
@Bean
public ServletContextInitializer initializer() {
return servletContext -> servletContext.setInitParameter("contextConfigLocation", "classpath:applicationContext.xml /WEB-INF/spring/security-applicationContext.xml");
}
@Bean
@ConditionalOnMissingBean(ContextLoaderListener.class)
public ContextLoaderListener contextLoaderListener() {
return new ContextLoaderListener();
}
@Bean
@ConditionalOnMissingBean(StartupContextListener.class)
public StartupContextListener startupContextListener() {
return new StartupContextListener();
}
// @Bean
// public FilterRegistrationBean someFilterRegistration() {
//
// FilterRegistrationBean registration = new FilterRegistrationBean();
// registration.setFilter(someFilter());
// registration.addUrlPatterns("/url/*");
// registration.addInitParameter("paramName", "paramValue");
// registration.setName("someFilter");
// return registration;
// }
// @Bean(name = "someFilter")
// public Filter someFilter() {
// return new SomeFilter();
// }
//
@Bean
public FilterRegistrationBean defaultCharsetFilterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter();
characterEncodingFilter.setEncoding("UTF-8");
registrationBean.setFilter(characterEncodingFilter);
registrationBean.setName("addDefaultCharsetFilter");
registrationBean.setAsyncSupported(true);
registrationBean.addInitParameter("encoding", "UTF-8");
registrationBean.addInitParameter("forceEncoding", "true");
registrationBean.addUrlPatterns("/*");
return registrationBean;
}
@Bean
public FilterRegistrationBean requestIdentifierFilterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
RequestIdentifierFilter requestIdentifierFilter = new RequestIdentifierFilter();
registrationBean.setFilter(requestIdentifierFilter);
registrationBean.setName("requestIdentifierFilter");
registrationBean.setAsyncSupported(true);
registrationBean.addUrlPatterns("/*");
return registrationBean;
}
@Bean
public FilterRegistrationBean springSecurityFilterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
DelegatingFilterProxy delegatingFilterProxy = new DelegatingFilterProxy();
registrationBean.setFilter(delegatingFilterProxy);
registrationBean.setName("springSecurityFilterChain");
registrationBean.setAsyncSupported(true);
registrationBean.addUrlPatterns("/*");
return registrationBean;
}
@Bean
public FilterRegistrationBean urlRewriteFilterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
UrlRewriteFilter urlRewriteFilter = new UrlRewriteFilter();
registrationBean.setFilter(urlRewriteFilter);
registrationBean.setName("UrlRewriteFilter");
registrationBean.setAsyncSupported(true);
registrationBean.addUrlPatterns("/*");
return registrationBean;
}
@Bean
public FilterRegistrationBean accessControlFilterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
AccessControlFilter accessControlFilter = new AccessControlFilter();
registrationBean.setFilter(accessControlFilter);
registrationBean.setName("accessControlFilter");
registrationBean.setAsyncSupported(true);
registrationBean.addUrlPatterns("/*");
return registrationBean;
}
@Bean
public DispatcherServlet dispatcherServlet() {
return new DispatcherServlet();
}
@Bean
public ServletRegistrationBean dispatcherServletRegistration() {
ServletRegistrationBean registration = new ServletRegistrationBean(dispatcherServlet());
Map<String, String> params = new HashMap<>();
params.put("contextConfigLocation", "/WEB-INF/spring/spring-servlet.xml");
registration.setInitParameters(params);
registration.setLoadOnStartup(1);
registration.setAsyncSupported(true);
registration.setName("spring");
registration.addUrlMappings("/");
return registration;
}
public static void main(String[] args) {
SpringApplication app = new SpringApplication(Application.class);
ApplicationContext ctx = app.run(args);
String[] beanNames = ctx.getBeanDefinitionNames();
Arrays.sort(beanNames);
for (String beanName : beanNames) {
LOG.info(beanName);
}
// SpringApplication.run(Application.class, args);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment