View Javadoc

1   /**
2    * - Digitalis Internal Framework v2.0 - (C) 2007, Digitalis Informatica. Distribuicao e Gestao de Informatica, Lda.
3    * Estrada de Paco de Arcos num.9 - Piso -1 2780-666 Paco de Arcos Telefone: (351) 21 4408990 Fax: (351) 21 4408999
4    * http://www.digitalis.pt
5    */
6   package pt.digitalis.dif.presentation.entities.system.error;
7   
8   import java.util.Map;
9   
10  import pt.digitalis.dif.controller.http.HTTPControllerConfiguration;
11  import pt.digitalis.dif.controller.interfaces.IDIFContext;
12  import pt.digitalis.dif.dem.annotations.entities.StageDefinition;
13  import pt.digitalis.dif.dem.annotations.stage.Context;
14  import pt.digitalis.dif.dem.annotations.stage.ExceptionHandler;
15  import pt.digitalis.dif.dem.annotations.stage.Execute;
16  import pt.digitalis.dif.dem.annotations.stage.InjectMessages;
17  import pt.digitalis.dif.dem.annotations.stage.controller.DispatcherMode;
18  
19  /**
20   * @author Galaio da Silva <a href="mailto:jgalaio@digitalis.pt">jgalaio@digitalis.pt</a><br/>
21   * @created Aug 11, 2010
22   */
23  @StageDefinition(name = "Session Timmed Page", service = "errorhandlingservice")
24  @ExceptionHandler(exceptions = "pt.digitalis.dif.exception.controller.SessionTimeoutException")
25  // @View(target = "internal/errorHandlerView.jsp")
26  @DispatcherMode(authenticate = false, authorize = false)
27  public class ExpiredSessionErrorStage extends AbstractErrorHandler {
28  
29      /** the current stage context */
30      @Context
31      protected IDIFContext context;
32  
33      /** the current stage messages */
34      @InjectMessages
35      protected Map<String, String> messages;
36  
37      /**
38       * Execute Method
39       */
40      @Execute
41      protected void execute()
42      {
43          context.addResultMessage("warn", messages.get("messageTitle"), messages.get("messageContent"));
44          context.redirectTo(HTTPControllerConfiguration.getInstance().getLoginStageID());
45      }
46  }