fix #759 add tomcat.sessionTimeout

This commit is contained in:
Shinsuke Sugaya 2016-10-27 12:00:25 +09:00
parent ee77e15bff
commit 9d35f02aae
2 changed files with 20 additions and 0 deletions

View file

@ -6,4 +6,5 @@
# ------
tomcat.URIEncoding = UTF-8
tomcat.useBodyEncodingForURI = true
tomcat.sessionTimeout = 30
#tomcat.bindAddress=127.0.0.1

View file

@ -18,7 +18,12 @@ package org.codelibs.fess;
// DO NOT DEPEND OTHER JARs
import java.io.File;
import java.util.Properties;
import org.apache.catalina.Container;
import org.apache.catalina.Context;
import org.apache.catalina.connector.Connector;
import org.apache.catalina.startup.Tomcat;
import org.codelibs.core.lang.StringUtil;
import org.dbflute.tomcat.TomcatBoot;
@ -118,4 +123,18 @@ public class FessBoot extends TomcatBoot {
protected static String getTomcatConfigPath() {
return System.getProperty(TOMCAT_CONFIG_PATH);
}
@Override
protected void reflectConfigToServer(Tomcat server, Connector connector, Properties props) {
super.reflectConfigToServer(server, connector, props);
final String sessionTimeout = props.getProperty("tomcat.sessionTimeout");
if (sessionTimeout != null) {
info(" tomcat.sessionTimeout = " + sessionTimeout);
Container container = server.getHost().findChild(contextPath);
if (container instanceof Context) {
((Context) container).setSessionTimeout(Integer.parseInt(sessionTimeout));
}
}
}
}