Pessoal,
Estou com um problema para rodar minha aplicação web utilizando o filter em JSF.
Estou tentando criar as regras de segurança da minha aplicação, mas quando configuro o Filter no web.xml da minha aplicação (testevalidacao) -->...
<filter>
<filter-name>VerificaSession</filter-name>
<filter-class>filtro.SecFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>VerificaSession</filter-name>
<url-pattern>/testevalidacao/*</url-pattern>
</filter-mapping>...
Executando implantação incremental para http://localhost:8084/testevalidacao Distribuição incremental do http://localhost:8084/testevalidacao completada Reimplantando http://localhost:8084/testevalidacao incrementalmente Inicialização em andamento... start?path=/testevalidacao FAIL - Application at context path /testevalidacao could not be started C:\[..]NetBeansProjects\testevalidacao\nbproject\build-impl.xml:552: [color=red]Deploy do módulo não foi realizado[/color]. FALHA NA CONSTRUÇÃO (tempo total: 2 segundos)
Peguei esta classe aqui mesmo no GUJ como exemplo para tentar fazer um teste, mas como disse minha aplicação nem se quer roda quando eu colocoo Filter no web.xml. Quando eu tiro o Filter a aplicação roda normalmente.
package filtro;
import br.com.sce.controller.PessoaController;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
*
* @author GUJ user
*/
public class SecFilter implements Filter{
public void init(FilterConfig filterConfig) throws ServletException {
throw new UnsupportedOperationException("Not supported yet.");
}
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse)res;
HttpServletRequest request = (HttpServletRequest)req;
if(!this.valida((HttpServletRequest)res)){
request.getRequestDispatcher("/usuario/novousuario.jsp").forward(request, response);
}else{
response.setHeader("Cache-Control", "no-store");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0);
chain.doFilter(req, res);
}
}
public void destroy() {
throw new UnsupportedOperationException("Not supported yet.");
}
private boolean valida(HttpServletRequest req){
boolean retorno = false;
HttpSession session = req.getSession(false);
if(session != null){
PessoaController pessoa = (PessoaController) session.getAttribute("userLogin");
if(pessoa != null && pessoa.isLogado()){
retorno = true;
}
}
return retorno;
}
}
Obrigado