Boa tarde pessoal,
eu gostaria de saber como eu faria um filtro, ou uma verificação qualquer, antes da pagina index.jsp rodar.
Por exemplo, eu tenho a index abaixo:
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head></head>
<body>
<jsp:forward page="paginas/principal.jsf"/>
</body>
</html>
mas eu queria fazer uma verficação no banco de dados, antes dela executar o "forward page=“paginas/principal.jsf”. Ou seja, eu queria verificar se dentro do banco de dados existe algum municipio com padrão nulo.
Dae tentei fz o seguinte filtro:
package br.com.empresa.projeto.comum.utilitario;
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;
import br.com.empresa.projeto.infra.banco.MunicipioDAO;
public class FiltroVerificacaoMunicipio implements Filter {
private MunicipioDAO municipioDao = new MunicipioDAO();
public FiltroVerificacaoMunicipio() {
}
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest req, ServletResponse resp,
FilterChain chain) throws IOException, ServletException {
HttpSession session = ((HttpServletRequest)req).getSession();
if (municipioDao.procurarMunicipioNulo()){
session.setAttribute("msg","redirecinando..");
((HttpServletResponse)resp).sendRedirect("../municipioNulo.jsf");
}
}
@Override
public void init(FilterConfig arg0) throws ServletException {
}
}
porém esse filtro não chega a ser executado.
eu tentei fz assim no mapeamento do filtro:
<filter>
<display-name>FiltroVerificaMunicipio</display-name>
<filter-name>FiltroVerificaMunicipio</filter-name>
<filter-class>br.com.empresa.projeto.comum.utilitario.FiltroVerificacaoMunicipio</filter-class>
</filter>
<filter-mapping>
<filter-name>FiltroVerificaMunicipio</filter-name>
<url-pattern>/index/*</url-pattern>
</filter-mapping>
Porém ele não funciona, e acaba entrando na pagina principal. Algueria saber me ajudar ?