LogoutAction.java
01 /*
02  * Created on 02.03.2004
03  */
04 package de.fub.tip.actions;
05 
06 import javax.servlet.http.HttpServletRequest;
07 import javax.servlet.http.HttpServletResponse;
08 import javax.servlet.http.HttpSession;
09 
10 import org.apache.log4j.Logger;
11 import org.apache.struts.action.Action;
12 import org.apache.struts.action.ActionForm;
13 import org.apache.struts.action.ActionForward;
14 import org.apache.struts.action.ActionMapping;
15 import org.apache.struts.action.ActionMessage;
16 import org.apache.struts.action.ActionMessages;
17 
18 /**
19  * Sinn: damit wird ein gesichertes Abmelden vom System ermöglicht.<br>
20  * Die Action zerstört alle SessionInformationen und <br>
21  * kehrt zum Startbildschirm von TIP zurück.
22  
23  @author hirsch, 02.03.2004
24  @version 2004-04-20
25  * $Id: LogoutAction.java,v 1.7 2004/04/26 08:03:17 hirsch Exp $
26  
27  */
28 public class LogoutAction extends Action {
29   /** Logger zur Fehleranalyse */
30   private static Logger logger = Logger.getLogger(LogoutAction.class);
31 
32   /**
33    * führt die Abmeldung aus und zerstört Session-Informationen
34    *
35    @param actionMapping ActionMapping
36    @param actionForm zugehörige ActionForm
37    @param request der aktuelle Request
38    @param response ServletResponse
39    *
40    @return ActionForward nächstes Ziel
41    */
42   public ActionForward execute(ActionMapping actionMapping,
43       ActionForm actionForm, HttpServletRequest request,
44       HttpServletResponse response ) { 
45 
46         logger.error("LogoutAction.execute() startet.");
47         
48         // Messages zusammenbasteln zur Anzeige
49         ActionMessages messages = new ActionMessages();
50         ActionMessage message = new ActionMessage("start.logout");
51         messages.addActionMessages.GLOBAL_MESSAGE, message );
52         saveMessagesrequest, messages );  
53 
54         // user und location aus Session entfernen
55         HttpSession session = request.getSession(false);
56         
57         if session != null ) {
58           session.removeAttribute("user");
59           session.removeAttribute("location");
60           session.invalidate();
61         // end if
62         
63         return actionMapping.findForward("success");
64   // end of execute
65 // end of class