Corregido error al comprobar si el usuario tenía sesión iniciada en el

filtro de authorización.
This commit is contained in:
Marcos Garcia Nuñez
2019-12-08 17:59:18 +01:00
parent 1d036765c5
commit fac86a7c20
3 changed files with 27 additions and 20 deletions

View File

@@ -2,12 +2,12 @@
package managedbean.common;
import javax.faces.context.FacesContext;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import TO.LoggedUserTO;
public class SessionUtils {
public static final String SESSION_VAR_USERNAME = "userName";
public static final String SESSION_VAR_USERID = "userId";
@@ -15,13 +15,21 @@ public class SessionUtils {
public static final String SESSION_VAR_USER = "loggedInUser";
public static HttpSession getSession() {
return (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false);
FacesContext ctx = FacesContext.getCurrentInstance();
if (ctx != null)
return (HttpSession) ctx.getExternalContext().getSession(false);
else
return null;
}
public static HttpServletRequest getRequest() {
return (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
}
public static HttpSession getSession(ServletRequest request) {
return ((HttpServletRequest) request).getSession(false);
}
public static void CreateSession(LoggedUserTO usr) {
HttpSession ses = getSession();
ses.setAttribute(SessionUtils.SESSION_VAR_USERNAME, usr.getName());
@@ -29,19 +37,23 @@ public class SessionUtils {
ses.setAttribute(SessionUtils.SESSION_VAR_USERTYPE, usr.getUserType());
ses.setAttribute(SessionUtils.SESSION_VAR_USER, usr);
}
public static void DestroySession() {
HttpSession ses = getSession();
ses.invalidate();
}
public static boolean isLogedIn() {
if (getUserId() == "")
return false;
else
return true;
return isLogedIn(getSession());
}
public static boolean isLogedIn(HttpSession session) {
if (session != null && session.getAttribute(SessionUtils.SESSION_VAR_USERID) != null)
return true;
else
return false;
}
public static String getUserName() {
HttpSession session = getSession();
if (session != null && session.getAttribute(SessionUtils.SESSION_VAR_USERNAME) != null)