source: trunk/www/exception/not_logged_in.jsp @ 7540

Last change on this file since 7540 was 7540, checked in by Nicklas Nordborg, 4 years ago

References #2131: Add support for installing multiple authentication managers

Updated the error handling for NotLoggedIn exceptions. The existing solution didn't work well with multiple authentication manages since switching between them reloads the login form. This causes other context information to be lost.

The new solution only display an error message with a link that opens the login dialog in a popup window. Once the login has been completed the page with the error message is reloaded and hopefully the original action can be completed.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.8 KB
Line 
1<%-- $Id: not_logged_in.jsp 7540 2018-12-03 08:11:18Z nicklas $
2  ------------------------------------------------------------------
3  Copyright (C) 2005 Nicklas Nordborg
4  Copyright (C) 2006 Jari Häkkinen, Nicklas Nordborg
5  Copyright (C) 2007 Nicklas Nordborg
6
7  This file is part of BASE - BioArray Software Environment.
8  Available at http://base.thep.lu.se/
9
10  BASE is free software; you can redistribute it and/or
11  modify it under the terms of the GNU General Public License
12  as published by the Free Software Foundation; either version 3
13  of the License, or (at your option) any later version.
14
15  BASE is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  GNU General Public License for more details.
19
20  You should have received a copy of the GNU General Public License
21  along with BASE. If not, see <http://www.gnu.org/licenses/>.
22  ------------------------------------------------------------------
23
24  This page is used to catch NotLoggedInExceptions which are
25  directed here via the exception.jsp page. NotLoggedInExceptions
26  happen when a user tries to access a protected page without beeing
27  logged in. Typically the exception is thrown from the method that
28  retrieves the BaseControl object:
29
30  BASE.getExistingBaseControl(pageContext);
31
32  This page will display a new login form allowing the user
33  to login again and continue with what he/she was doing.
34
35  @author Nicklas
36  @version 2.0
37--%>
38<%@ page pageEncoding="UTF-8" session="false"
39  import="net.sf.basedb.core.Application"
40  import="net.sf.basedb.core.SessionControl"
41  import="net.sf.basedb.clients.web.Base"
42  import="net.sf.basedb.util.Values"
43  isErrorPage="true"
44%>
45<%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
46<%
47final SessionControl sc = Base.getSessionControl(pageContext, true);
48final String ID = sc.getId();
49final String root = request.getContextPath()+"/";
50final String redirect = Values.getString((String)request.getAttribute("redirect"));
51
52try
53{
54  %>
55  <base:page type="default" menu="exception" title="Not logged in">
56  <base:head scripts="exception.js" />
57  <base:body data-resize-if-popup="1">
58 
59    <table style="margin: auto; max-width: 600px; margin-top:5em; margin-bottom: 1em;">
60    <tr>
61    <td>
62      <h1>Not logged in</h1>
63      <div class="messagecontainer error" style="margin-top: 1em; padding: 1em; font-size: 120%;">
64        You have been automatically logged out due to inactivity or because the
65        server has been restarted.
66        You may log in again and continue your work but unsaved changes
67        may have been lost.
68      </div>
69    </td>
70    </tr>
71    </table>
72
73    <base:buttongroup subclass="dialogbuttons">
74      <base:button id="close" title="Close"/>
75      <base:button id="gologin" image="login.png" title="Login again&hellip;" />
76    </base:buttongroup>
77       
78  </base:body>
79  </base:page>
80  <%
81}
82finally
83{}
84%>
Note: See TracBrowser for help on using the repository browser.