PmdbWebAppInitializer.java
package org.xandercat.pmdb.config;
import java.io.File;
import javax.servlet.Filter;
import javax.servlet.MultipartConfigElement;
import javax.servlet.ServletRegistration.Dynamic;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.web.filter.DelegatingFilterProxy;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
/**
* Application initialization.
*
* @author Scott Arnold
*/
public class PmdbWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
private static final Logger LOGGER = LogManager.getLogger(PmdbWebAppInitializer.class);
private File uploadFolder = new File(System.getProperty("java.io.tmpdir"));
@Override
protected Filter[] getServletFilters() {
return new Filter[] { new DelegatingFilterProxy("springSecurityFilterChain") };
}
@Override
protected Class<?>[] getRootConfigClasses() {
LOGGER.debug("Returning root config classes to framework.");
return new Class[] { WebConfig.class, SecurityConfig.class };
}
@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
@Override
protected void customizeRegistration(Dynamic registration) {
MultipartConfigElement multipartConfig = new MultipartConfigElement(
uploadFolder.getAbsolutePath(), 1024*1024*10, 1024*1024*12, 1024*1024*5);
registration.setMultipartConfig(multipartConfig);
}
}