https://bz.apache.org/bugzilla/show_bug.cgi?id=69245

            Bug ID: 69245
           Summary: Tomcat.addWebapp() doesn't expire sessions after
                    Tomcat.start()
           Product: Tomcat 9
           Version: 9.0.93
          Hardware: PC
                OS: Mac OS X 10.1
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: jfrantz...@gmail.com
  Target Milestone: -----

Hi,
I'm using Tomcat 9.0.93 (and previously tried 9.0.74) to run an embedded Tomcat
in my JUnit test, using org.apache.catalina.startup.Tomcat.addWebapp(String,
String) and Tomcat.start(). This works just great, with one exception: sessions
do not get expired, possibly because there is no background reaper thread in
the right place. 

I have set <session-timeout> to 1 in my web.xml, and made sure in the debugger
that it ends up in
org.apache.tomcat.util.descriptor.web.SessionConfig.sessionTimeout. Also I
manually tested the webapp with an identical web.xml, and verified that
sessions do expire after 1 minute.

Is there perhaps anything I need to massage org.apache.catalina.startup.Tomcat
with so that it runs the background thread and expires sessions as specified in
the web.xml?

This is roughly what I am doing and could serve as steps to reproduce:

        tomcat.setPort(8080);
        tomcat.setBaseDir("./target/TomcatTest");
        tomcat.getHost().setAutoDeploy(true);
        tomcat.addWebapp("", webAppDir.toFile().getAbsolutePath());

        tomcat.init();
        // must call getConnector(), see
https://stackoverflow.com/a/59282431/1245428
        tomcat.getConnector();
        tomcat.start();  

        // run server loop that waits for shutdown command
        CompletableFuture.supplyAsync(() -> 
                {
                        tomcat.getServer().await(); 
                        return true;    
                });

(There is a seemingly related bug
https://bz.apache.org/bugzilla/show_bug.cgi?id=51558 , but that got fixed >10
years ago)

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to