Mega Code Archive

 
Categories / Java / Servlets
 

Session Events

import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSessionBindingEvent; import javax.servlet.http.HttpSessionBindingListener; public class Binder extends HttpServlet {   public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException,       IOException {     resp.setContentType("text/html");     PrintWriter out = resp.getWriter();     HttpSession session = req.getSession(true);     SessionObject o = new SessionObject(getServletContext());     session.setAttribute("Binder.object", o);     out.println("<html>");     out.println("<head>");     out.println("<title>Session Binder</title>");     out.println("</head>");     out.println("<body>");     out.println("Object bound to session " + session.getId());     out.println("</body>");     out.println("</html>");     out.flush();   } } class SessionObject implements HttpSessionBindingListener {   ServletContext context;   public SessionObject(ServletContext context) {     this.context = context;   }   public void valueBound(HttpSessionBindingEvent event) {     context.log("" + (new java.util.Date()) + " Binding " + event.getName() + " to session "         + event.getSession().getId());   }   public void valueUnbound(HttpSessionBindingEvent event) {     context.log("" + (new java.util.Date()) + " Unbinding " + event.getName() + " from session "         + event.getSession().getId());   } }