View Javadoc

1   // $Id: SessionFilter.java,v 1.1 2004/06/24 20:54:21 powerpete Exp $
2   // [JMP, 24.06.2004] created this file.
3   package com.pnpconsult.zeiterfassung.filter;
4   
5   import java.io.IOException;
6   
7   import javax.servlet.Filter;
8   import javax.servlet.FilterChain;
9   import javax.servlet.FilterConfig;
10  import javax.servlet.ServletException;
11  import javax.servlet.ServletRequest;
12  import javax.servlet.ServletResponse;
13  
14  import net.sf.hibernate.HibernateException;
15  
16  import org.apache.commons.logging.Log;
17  import org.apache.commons.logging.LogFactory;
18  
19  import com.pnpconsult.zeiterfassung.helper.SessionLocator;
20  
21  /***
22   * @author <a href="mailto:powerpete@users.sf.net">Moritz Petersen</a>
23   * @version $Id: SessionFilter.java,v 1.1 2004/06/24 20:54:21 powerpete Exp $
24   */
25  public class SessionFilter implements Filter
26  {
27      private static final Log LOG = LogFactory.getLog(SessionFilter.class);
28      
29      public void init(FilterConfig config) throws ServletException
30      {}
31  
32      public void doFilter(
33          ServletRequest request,
34          ServletResponse response,
35          FilterChain chain) throws IOException, ServletException
36      {
37          try
38          {
39              chain.doFilter(request, response);
40          }
41          finally
42          {
43              try
44              {
45                  SessionLocator.closeSession();
46              }
47              catch (HibernateException e)
48              {
49                  LOG.fatal(e.getMessage(), e);
50              }
51          }
52      }
53  
54      public void destroy()
55      {}
56  }