001package org.lanyonm.playground.config; 002 003import javax.servlet.Filter; 004 005import org.lanyonm.playground.service.ExceptionServiceImpl; 006import org.lanyonm.playground.service.TodoServiceImpl; 007import org.lanyonm.playground.service.UserServiceImpl; 008// import org.slf4j.MDC; 009import org.springframework.web.filter.CharacterEncodingFilter; 010import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; 011 012import com.opensymphony.sitemesh.webapp.SiteMeshFilter; 013 014/** 015 * Java Config for this application. Life begins here. 016 * 017 * @author lanyonm 018 */ 019public class AppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer { 020 021 @Override 022 protected Class<?>[] getRootConfigClasses() { 023 // MDC.put("environment", System.getenv("APP_ENV") != null ? System.getenv("APP_ENV") : "dev"); 024 return new Class<?>[]{DataConfig.class, ExceptionServiceImpl.class, TodoServiceImpl.class, UserServiceImpl.class, ViewResolver.class}; 025 } 026 027 @Override 028 protected Class<?>[] getServletConfigClasses() { 029 return new Class<?>[]{WebConfig.class}; 030 } 031 032 @Override 033 protected Filter[] getServletFilters() { 034 CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter(); 035 characterEncodingFilter.setEncoding("UTF-8"); 036 return new Filter[]{ characterEncodingFilter, new SiteMeshFilter() }; 037 } 038 039 @Override 040 protected String[] getServletMappings() { 041 return new String[]{"/"}; 042 } 043 044}