Search code examples
javaspringsessiontomcatserver

Application property "server.servlet.session.timeout" is not working in Spring Boot project


According to the documentation of Spring Boot, session timeout can be configured by setting

server.servlet.session.timeout= 300s

in application.properties file. In this post and in Spring Boot documentation it is also said so. But unfortunately this is not working for me.

Is there any other configuration to get expected result?


Solution

  • I am posting answer because this scenario is new for me. And I haven't got proper solution step by step. According to the suggestion of M. Deinum I created a web.xml file under WEB-INF folder. Project structure is like

    src
     |_ main
         |_ java
         |_ resources
         |_ webapp
             |_ WEB-INF
                  |_ web.xml
    

    And in web.xml I configured <session-timeout>...</session-timeout>

    My web.xml is like

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns="http://java.sun.com/xml/ns/javaee"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
             id="WebApp_ID" version="2.5">
    
    
        <session-config>
            <session-timeout>5</session-timeout>
        </session-config>
    
    </web-app>
    

    And now session time of my webapp in server is working according to my configuration. Thanks goes to M. Deinum