Фильтр сервлетов Java неправильно вводит метод doFilter - PullRequest
0 голосов
/ 24 мая 2018

У меня есть проект maven без файла web.xml, так как он пока не нужен.У меня есть свой класс фильтра, который скорее проверяет, вошел ли пользователь в систему, но проверяет, имеет ли значение userAttribute "user" значение NULL в текущем sessio, если это так, пользователь перенаправляется на страницу входа.вот мой код

@WebFilter(urlPatterns = "/LogInSample /FrontController?command=createorder") 
public class AuthenticationFilter implements Filter {

@Override
public void init(FilterConfig filterConfig) throws ServletException {

}

@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
   //pre-processing (ting der sker inden filteret bliver taget i brug)
    HttpServletRequest httpRequest = (HttpServletRequest) request;
    if (httpRequest.getRequestURI().startsWith("/LogInSample/FrontController?command=createorder")
            || httpRequest.getRequestURI().startsWith("/customerpage")) {
        HttpSession session = httpRequest.getSession();
        System.out.println("inside of authentication filter");
        if (session.getAttribute("user") == null) {
            request.getRequestDispatcher("/login").forward(request, response);
        }

    }

    chain.doFilter(request, response);
    System.out.println("after do filter");
    //post-processing comes after this command

Я просто скопировал URL-адрес, в котором я хотел бы, чтобы фильтр был отфильтрован, просто чтобы проверить его, но он даже не входит в метод doFilter,

Это мои аннотациичто не так?Я должен создать файл web.xml и настроить аннотации таким образом, или

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...