
com.airlenet.integration.webapp.WebAppStartup Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of play-integration-webapp Show documentation
Show all versions of play-integration-webapp Show documentation
The Webapp of Play Intergation.
The newest version!
package com.airlenet.integration.webapp;
import javax.servlet.Filter;
import javax.servlet.MultipartConfigElement;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRegistration.Dynamic;
import org.apache.commons.configuration2.Configuration;
import org.springframework.core.annotation.Order;
import org.springframework.web.filter.CharacterEncodingFilter;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
import com.airlenet.config.StaticConfigSupplier;
import com.airlenet.core.PlayConstants;
@Order(PlayConstants.order_webapp)
public class WebAppStartup extends AbstractAnnotationConfigDispatcherServletInitializer {
private Class>[] rootConfigClasses;
private Class>[] servletConfigClasses;
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
final Configuration config = StaticConfigSupplier.getConfiguration();
String[] rootConfigBeanClassNames = config.getStringArray("integration.root_config_bean_classes");
String[] servletConfigBeanClassNames = config.getStringArray("integration.servlet_config_bean_classes");
if (rootConfigBeanClassNames == null) {
rootConfigClasses = new Class>[] { RootConfigBean.class };
} else {
rootConfigClasses = new Class>[rootConfigBeanClassNames.length + 1];
rootConfigClasses[0] = RootConfigBean.class;
for (int i = 0; i < rootConfigBeanClassNames.length; i++) {
try {
rootConfigClasses[i + 1] = Class.forName(rootConfigBeanClassNames[i]);
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
}
}
if (servletConfigBeanClassNames == null) {
servletConfigClasses = new Class>[] { ServletConfigBean.class };
} else {
servletConfigClasses = new Class>[servletConfigBeanClassNames.length + 1];
servletConfigClasses[0] = ServletConfigBean.class;
for (int i = 0; i < servletConfigBeanClassNames.length; i++) {
try {
servletConfigClasses[i + 1] = Class.forName(servletConfigBeanClassNames[i]);
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
}
}
super.onStartup(servletContext);
}
@Override
protected Class>[] getRootConfigClasses() {
return rootConfigClasses;
}
@Override
protected Class>[] getServletConfigClasses() {
return servletConfigClasses;
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
@Override
protected Filter[] getServletFilters() {
return new Filter[] { new CharacterEncodingFilter(PlayConstants.characterEncoding, true) };
}
@Override
protected void customizeRegistration(Dynamic registration) {
super.customizeRegistration(registration);
registration.setMultipartConfig(
new MultipartConfigElement("/tmp", 1024 * 1024 * 512, 1024 * 1024 * 1024, 1024 * 512));
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy