未执行JSF筛选器

未执行JSF筛选器,jsf,servlet-filters,Jsf,Servlet Filters,问题是过滤器没有执行。URL是localhost:8080/PP2/faces/kosz.xhtml。正确的方法是什么? 我的web.xml中没有条目,它都是基于注释的。您在过滤器的init()和destroy()方法中抛出异常。如果您不想在init()或destroy()中执行任何操作,只需将方法体留空即可。在这种情况下,您的筛选器根本没有成功初始化。您在筛选器的init()和destroy()方法中抛出异常。如果您不想在init()或destroy()中执行任何操作,只需将方法体留空即可。在

问题是过滤器没有执行。URL是
localhost:8080/PP2/faces/kosz.xhtml
。正确的方法是什么?
我的web.xml中没有条目,它都是基于注释的。

您在过滤器的
init()和
destroy()方法中抛出异常。如果您不想在
init()
destroy()
中执行任何操作,只需将方法体留空即可。在这种情况下,您的筛选器根本没有成功初始化。

您在筛选器的
init()
destroy()
方法中抛出异常。如果您不想在
init()
destroy()
中执行任何操作,只需将方法体留空即可。在这种情况下,您的筛选器根本没有成功初始化。

哈哈,这很聪明:D。谢谢。哈哈,这很聪明:D。谢谢。您从哪里获得筛选器模板的?所有那些不支持的操作异常都是完全错误的。不过,我记得以前见过几次。也许你在网站或书中找到了它。如果是,哪一个?真的吗?哇!因此,它不仅生成其
doPost()
doGet()
委托给完全错误的
processRequest()
方法的servlet,而且还生成这样的破过滤器?当您希望netbeans实现所有接口方法时,它的默认代码段。它可能可以在NB选项中更改,但它是默认的。在Eclipse中,我只需右键单击package、New、Filter、specify classname,就这样。从它们来看,这是非常愚蠢的。就像他们只想把会引起问题的代码放进去,然后在抛出
RuntimeException
时隐藏起来,这样你就不会看到任何编译器错误。你从哪里得到过滤器模板的?所有那些不支持的操作异常都是完全错误的。不过,我记得以前见过几次。也许你在网站或书中找到了它。如果是,哪一个?真的吗?哇!因此,它不仅生成其
doPost()
doGet()
委托给完全错误的
processRequest()
方法的servlet,而且还生成这样的破过滤器?当您希望netbeans实现所有接口方法时,它的默认代码段。它可能可以在NB选项中更改,但它是默认的。在Eclipse中,我只需右键单击package、New、Filter、specify classname,就这样。从它们来看,这是非常愚蠢的。就像他们只想把会引起问题的代码放进去,然后在抛出
RuntimeException
时隐藏起来,这样你就不会看到任何编译器错误。
@WebFilter(filterName = "loginFilter",  value = { "/faces/kosz.xhtml" } , dispatcherTypes = { DispatcherType.FORWARD, DispatcherType.ERROR, DispatcherType.REQUEST, DispatcherType.INCLUDE }  )
public class loginFilter implements Filter {    
    public loginFilter(){
    }

    public void doFilter(ServletRequest request, ServletResponse response,
                         FilterChain chain)
            throws IOException, ServletException{
        HttpServletRequest req = ( HttpServletRequest ) request;
        userSession auth = ( userSession ) req.getSession().getAttribute("user");
        if ( auth != null && auth.isLogged() ) {
            chain.doFilter(request, response);
             HttpServletResponse res = ( HttpServletResponse ) response;
            res.sendRedirect(req.getContextPath() + "/login.xhtml");
        }
        else {
            HttpServletResponse res = ( HttpServletResponse ) response;
            res.sendRedirect(req.getContextPath() + "/login.xhtml");
        }
      }

    @Override
    public void init(FilterConfig filterConfig) throws ServletException
      {
        throw new UnsupportedOperationException("Not supported yet.");
      }

    @Override
    public void destroy()
      {
        throw new UnsupportedOperationException("Not supported yet.");
      }
/**
 * Return the filter configuration object for this filter.
}