Top community members
All Wiki Articles Create Wiki Article

Have you ever heard about encyclopedia for code?

What about: Wiki for Code project?

* because I've tried to share code and my solutions on different services and it was removed or I was unwelcomed
   - maybe it wasn't good place, but this one is.

if you think you have solution that can help someone, you are welcome to share this solution - Click here

Tomcat change session timeout

0 contributions
12 points

1. Open web.xml

web.xml location:

apache-tomcat-8.5.38/conf/web.xml

2. Change value of <session-timeout>30</session-timeout>

After we opened web.xml, we need to find <session-timeout> tag in xml and we can change it to other value.

<!-- ==================== Default Session Configuration ================= -->
<!-- You can set the default session timeout (in minutes) for all newly   -->
<!-- created sessions by modifying the value below.                       -->

<session-config>
    <session-timeout>30</session-timeout>
</session-config>
session-timeout value is defined in minutes

Explanation:

  • to set to 1h set session-timeout value to 60
  • to set to 24h set session-timeout value to 1440

Calculations:

  • 60 min - 1h
  • 1440 min - 24h (24*60) - 1 day

Examples:

  • Set session timeout to 60 min (1h)
<session-config>
    <session-timeout>60</session-timeout>
</session-config>
  • Set session timeout to 1440 min (24h)
<session-config>
    <session-timeout>1440</session-timeout>
</session-config>

3. Restart tomcat

With Intellij IDEA - restart tomcat from IDEA level.

If we run tomcat on windows:

  • apache-tomcat-8.5.38\bin\shutdown.sh
  • apache-tomcat-8.5.38\bin\startup.sh

If we run tomcat on windows:

  • apache-tomcat-8.5.38\bin\shutdown.bat
  • apache-tomcat-8.5.38\bin\startup.bat

4. Second way to do it - Timeout per individual Session

We can set session timeout programmatically for each request.

The way to do it:

import javax.servlet.http.HttpSession;

HttpSession session = request.getSession();
session.setMaxInactiveInterval(1440); // 24h

Read more

  1. JavaEE - HttpSession.setMaxInactiveInterval(int)
  2. Spring session - setMaxInactiveInterval(java.time.Duration interval)
  3. Apache tomcat - setSessionTimeout(int)
0 contributions

Checkout latest Findings & News:

Checkout latest questions:

Checkout latest wiki articles:

Hey 👋
Would you like to know what we do?
  • Dirask is IT community, where we share coding knowledge and help each other to solve coding problems.
  • We welcome everyone,
    no matter what the experience,
    no matter how basic the question is,
    this community will help you.
Read more