J2EE - не фильтрует метод `doFilter` - PullRequest
0 голосов
/ 29 апреля 2018

Это web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->

<web-app>
    <servlet>
        <servlet-name>login</servlet-name>
        <servlet-class>servlets.Login</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>login</servlet-name>
        <url-pattern>/reg/login</url-pattern>
    </servlet-mapping>

    <servlet>
        <servlet-name>register</servlet-name>
        <servlet-class>servlets.Register</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>register</servlet-name>
        <url-pattern>/reg/signup</url-pattern>
    </servlet-mapping>

    <servlet>
        <servlet-name>dashboard</servlet-name>
        <servlet-class>servlets.Dashboard</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>dashboard</servlet-name>
        <url-pattern>/user/dashboard</url-pattern>
    </servlet-mapping>

    <servlet>
        <servlet-name>logout</servlet-name>
        <servlet-class>servlets.Logout</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>logout</servlet-name>
        <url-pattern>/reg/logout</url-pattern>
    </servlet-mapping>

    <servlet>
        <servlet-name>edit</servlet-name>
        <servlet-class>servlets.EditProfile</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>edit</servlet-name>
        <url-pattern>/user/controlpanel/edit</url-pattern>
    </servlet-mapping>




    <!--####################################################-->

    <filter>
        <filter-name>regAuth</filter-name>
        <filter-class>filters.RegPathAuthFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>regAuth</filter-name>
        <url-pattern>/myWebApp/reg/login.html</url-pattern>
        <url-pattern>/myWebApp/reg/signup.html</url-pattern>
    </filter-mapping>

    <filter>
        <filter-name>regAccess</filter-name>
        <filter-class>filters.RegPathAccessFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>regAccess</filter-name>
        <url-pattern>/myWebApp/reg/login</url-pattern>
        <url-pattern>/myWebApp/reg/signup</url-pattern>

    </filter-mapping>

    <filter>
        <filter-name>userAuth</filter-name>
        <filter-class>filters.UserPathAuthFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>userAuth</filter-name>
        <url-pattern>/myWebApp/user/*</url-pattern>
        <url-pattern>/myWebApp/user/controlpanel/*</url-pattern>

    </filter-mapping>
    <filter>
        <filter-name>userAccess</filter-name>
        <filter-class>filters.UserPathAccessFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>userAccess</filter-name>
        <url-pattern>/myWebApp/user/dashboard.html</url-pattern>
        <url-pattern>/myWebApp/user/controlpanel/edit.html</url-pattern>
    </filter-mapping>
</web-app>

Я все проверил, несколько раз отладил проект и не понял проблемы. метод init всех 4 фильтров будет вызван, но при отправке запроса метод doFilter не будет вызван. Я не могу понять, в чем проблема.

Итак, как я могу решить эту проблему? Где я делаю не так?

Если вам нужна реализация фильтров, дайте мне знать.

Привет

...