Sou novo com JSF e gostaria de saber como vcs controlam as autorizações dos usuários, ou seja,
como vc permitem ou não o acesso as páginas do sistema com JSF…???
publicclassLoginFilterimplementsFilter{/** * Logger em questão */privatestaticfinalLoggerlogger=Logger.getLogger(LoginFilter.class);/** * Identificador do Filtro */privatefinalstaticStringFILTER_APPLIED="_security_filter_applied";/** * Construtor padrão */publicLoginFilter(){}/** * Método implementado do Filter */publicvoidinit(FilterConfigarg0)throwsServletException{}/** * Método implementado do Filter */publicvoiddestroy(){}/** * Responsável por validar e verificar se o usuario está logado */publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletException{HttpServletRequesthreq=(HttpServletRequest)request;HttpServletResponsehresp=(HttpServletResponse)response;HttpSessionsession=hreq.getSession();StringpaginaAtual=newString(hreq.getRequestURL());logger.info("Pagina em questao: "+paginaAtual);if((request.getAttribute(FILTER_APPLIED)==null)&&paginaAtual!=null&&(!paginaAtual.endsWith("login.jsf")&&!paginaAtual.endsWith("cadastroEmpresa.jsf")&&!paginaAtual.endsWith("recuperarSenha.jsf")&&!paginaAtual.endsWith("loginEnviadoEmail.jsf")&&!paginaAtual.contains("_classes.xcss")&&!paginaAtual.contains("/script")&&!paginaAtual.endsWith("cadastroEfetuado.jsf"))&&(paginaAtual.endsWith(".jsf"))){request.setAttribute(FILTER_APPLIED,Boolean.TRUE);Stringuser=null;LoginBeanlogin=null;OperadorBeanoperador=null;logger.info("Procurando usuario");if(((br.com.teste.jsf.bean.login.Login)session.getAttribute("login"))!=null){login=((br.com.teste.jsf.bean.login.Login)session.getAttribute("login")).getLoginBean();operador=((br.com.teste.jsf.bean.login.Login)session.getAttribute("login")).getOperadorBean();}logger.info("Usuario encontrado: "+user);if((operador.getUsuario()==null&&operador.getSenha()==null||operador.getUsuario().equals("")&&operador.getSenha().equals(""))&&(login.getUsuario()==null&&login.getSenha()==null||login.getUsuario().equals("")&&login.getSenha().equals(""))){if(paginaAtual.contains("administracao")){logger.info("Redirecionando para a página de login da Administracao");hresp.sendRedirect("/Teste/administracao/login/login.jsf");}else{logger.info("Redirecionando para a página de login do Portal empresas");hresp.sendRedirect("/Teste/portal/login/login.jsf");}return;}if(login.getUsuario()!=null&&(login.getSenha()==null||login.getSenha().equals(""))){hresp.sendRedirect("/Teste/portal/login/login.jsf");return;}}chain.doFilter(request,response);}}