Skip to content

Commit 2661db6

Browse files
committed
Added login error page in ProfileFilter
1 parent 0a14d3e commit 2661db6

File tree

2 files changed

+75
-3
lines changed

2 files changed

+75
-3
lines changed

knowage-core/src/main/java/it/eng/spagobi/commons/filters/ProfileFilter.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha
132132
}
133133
} catch (Exception e) {
134134
LOGGER.error("Error authenticating user", e);
135-
// httpRequest.getRequestDispatcher("/WEB-INF/jsp/commons/silentLoginFailed.jsp").forward(request, response);
136-
httpResponse.sendError(HttpServletResponse.SC_UNAUTHORIZED);
135+
httpResponse.sendRedirect(httpRequest.getContextPath() + "/errorLogin.jsp");
136+
// httpResponse.sendError(HttpServletResponse.SC_UNAUTHORIZED);
137137
return;
138138
}
139139
} else {
@@ -215,7 +215,8 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha
215215
}
216216
} catch (Exception e) {
217217
LOGGER.error("Error while service execution", e);
218-
((HttpServletResponse) response).sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
218+
((HttpServletResponse) response).sendRedirect(((HttpServletRequest) request).getContextPath() + "/errorLogin.jsp");
219+
// ((HttpServletResponse) response).sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
219220
} finally {
220221
// since TenantManager uses a ThreadLocal, we must clean after
221222
// request processed in each case
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
<%--
2+
Knowage, Open Source Business Intelligence suite
3+
Copyright (C) 2016 Engineering Ingegneria Informatica S.p.A.
4+
5+
Knowage is free software: you can redistribute it and/or modify
6+
it under the terms of the GNU Affero General Public License as published by
7+
the Free Software Foundation, either version 3 of the License, or
8+
(at your option) any later version.
9+
10+
Knowage is distributed in the hope that it will be useful,
11+
but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
GNU Affero General Public License for more details.
14+
15+
You should have received a copy of the GNU Affero General Public License
16+
along with this program. If not, see <http://www.gnu.org/licenses/>.
17+
--%>
18+
19+
20+
<%@page import="it.eng.spagobi.commons.services.LoginModule"%>
21+
<%@page import="it.eng.spago.dispatching.httpchannel.AdapterHTTP"%>
22+
<%@page import="it.eng.spagobi.commons.utilities.urls.IUrlBuilder"%>
23+
<%@page import="it.eng.spagobi.commons.utilities.urls.UrlBuilderFactory"%>
24+
<%@page import="it.eng.spagobi.commons.utilities.messages.IMessageBuilder"%>
25+
<%@page import="it.eng.spagobi.commons.utilities.messages.MessageBuilderFactory"%>
26+
<%@page import="it.eng.spagobi.utilities.themes.ThemesManager"%>
27+
<%@ page import="it.eng.spagobi.commons.utilities.ChannelUtilities"%>
28+
<%@ page import="it.eng.spago.navigation.LightNavigationManager,
29+
java.util.Map,
30+
java.util.HashMap,
31+
it.eng.spago.base.Constants"%>
32+
33+
<%
34+
String contextName = ChannelUtilities.getSpagoBIContextName(request);
35+
String loginUrl = null;
36+
Map loginUrlPars = new HashMap();
37+
loginUrlPars.put(AdapterHTTP.NEW_SESSION, "TRUE");
38+
loginUrlPars.put(Constants.PAGE, LoginModule.PAGE_NAME);
39+
loginUrlPars.put(LightNavigationManager.LIGHT_NAVIGATOR_RESET, "TRUE");
40+
IUrlBuilder urlBuilder = UrlBuilderFactory.getUrlBuilder("WEB");
41+
loginUrl = urlBuilder.getUrl(request, loginUrlPars);
42+
IMessageBuilder msgBuilder = MessageBuilderFactory.getMessageBuilder();
43+
String currTheme = ThemesManager.getDefaultTheme();
44+
%>
45+
46+
<html>
47+
<script type="text/javascript" nonce="<%= request.getAttribute("cspNonce") %>">
48+
function signup(){
49+
var form = document.getElementById('formId');
50+
var act = '<%=urlBuilder.getResourceLink(request, "/restful-services/signup/prepare")%>';
51+
form.action = act;
52+
form.submit();
53+
}
54+
</script>
55+
<body>
56+
<link rel='stylesheet' type='text/css' href='<%=urlBuilder.getResourceLinkByTheme(request, "css/home40/standard.css",currTheme)%>'/>
57+
<form id="formId" name="login" action="<%=contextName%>/servlet/AdapterHTTP?PAGE=LoginPage&NEW_SESSION=TRUE" method="POST">
58+
</form>
59+
60+
<main class="main main-error" id="main">
61+
<div class="aux">
62+
<div class="content-error">
63+
<h1><%=msgBuilder.getMessage("authError")%></h1>
64+
<span class="ops">Ooooooops!</span>
65+
<p class="retry"><%=msgBuilder.getMessage("userPwdInvalid")%>, <a href="<%=loginUrl%>"><%=msgBuilder.getMessage("retry")%>!</a></p>
66+
67+
</div>
68+
</div>
69+
</main>
70+
</body>
71+
</html>

0 commit comments

Comments
 (0)