title: How can I expire all my sessions in Tomcat?
body: <p>I would like to expire all my sessions in Tomcat. We test our product under Fitnesse and some sessions remain and the end of the session causes dependency between the tests. I do it by hand with the following code, but some sessions remain (I can check it with the <a href="http://localhost:8080/manager/html/list" rel="noreferrer">http://localhost:8080/manager/html/list</a> url)</p>
  
  <pre><code>public static void expireAllSessions() {
      String[] applications = { "a", "b", "c", "d",  "e" };
      for (String application : applications) {
          try {
              expireAllSessions(application);
          } catch (Exception e) {
              logger.error(e);
          }
      }
  }
  
  private static void expireAllSessions(final String application) throws Exception {
      // cf doc http://hc.apache.org/httpclient-3.x/authentication.html
      HttpClient client = new HttpClient();
      client.getParams().setAuthenticationPreemptive(true);
      Credentials userPassword = new UsernamePasswordCredentials("tomcat", "tomcat");
      client.getState().setCredentials(AuthScope.ANY, userPassword);
  
      String url = "http://localhost:8080/manager/html/expire";
      NameValuePair[] parametres = new NameValuePair[] {
              new NameValuePair("path", "/" + application),
              new NameValuePair("idle", "0")
      };
      HttpMethod method = new GetMethod(url);
      method.setQueryString(parametres);
      client.executeMethod(method);
  }
  </code></pre>
  
  <p>Is there a way to do it more efficiently and immediate with no remaining session ?</p>