Skip to content
Snippets Groups Projects
Commit 0b56dc5c authored by Julian Dehne's avatar Julian Dehne
Browse files

refactoring: switching to dependency injection and fixing tests

parent 4fe2113f
No related branches found
No related tags found
No related merge requests found
package unipotsdam.gf.session;
import org.glassfish.hk2.api.ServiceLocator;
import org.glassfish.hk2.utilities.ServiceLocatorUtilities;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import unipotsdam.gf.config.GFApplicationBinder;
import unipotsdam.gf.modules.user.User;
import unipotsdam.gf.modules.user.UserDAO;
......@@ -31,7 +34,7 @@ public class SessionExistsFilter implements Filter {
private void redirectToLogin(ServletRequest request, ServletResponse response) {
log.debug("redirecting user to login because user does not exist");
String loginJSP = "../../index.jsp";
String loginJSP = "../index.jsp?session=false";
((HttpServletResponse) response).setHeader("Location", loginJSP);
response.setContentType("text/html");
((HttpServletResponse) response).setStatus(HttpServletResponse.SC_FOUND); // SC_FOUND = 302
......@@ -51,11 +54,12 @@ public class SessionExistsFilter implements Filter {
if (attribute == null) {
redirectToLogin(request, response);
} else {
final ServiceLocator locator = ServiceLocatorUtilities.bind(new GFApplicationBinder());
locator.inject(this);
User user = userDAO.getUserByEmail(attribute.toString());
if (user == null) {
redirectToLogin(request, response);
}
chain.doFilter(request, response);
}
}
......
......@@ -7,7 +7,9 @@ import unipotsdam.gf.modules.user.UserDAO;
import unipotsdam.gf.session.GFContexts;
import unipotsdam.gf.modules.states.ProjectPhase;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.SimpleTagSupport;
......
......@@ -50,7 +50,13 @@
<filter-mapping>
<filter-name>SessionValidatorFilter</filter-name> <!-- mandatory -->
<url-pattern>/*/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/project/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/groupfinding/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/annotation/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/feedback/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/journal/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/profile/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<url-pattern>/researchReport/*</url-pattern> <!-- either url-pattern or servlet-name is mandatory -->
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment