Un filtre est exécuté si la requête http match avec la valeur de l'élément <url-pattern>
ou si la requête http match avec la config d'une Servlet dont le nom est spécifié dans l'élément <servlet>.
Il peut y avoir plusieurs filtres qui correspondent à la requête http.
L'ordre d'exécution des filtres est déterminé comme suit:
-
En premier, seront exécutés les filtres dont la valeur de l'élément <url-pattern> match avec la requête http.
L'ordre d'exécution de ces filtres est déterminé en fonction de l'ordre de déclaration des éléments <filter-mapping> dans le fichier de déploiement.
-
En deuxième, seront exécutés les filtres dont la valeur de l'élément <servlet-name> match avec la Servlet cible de la requête http.
L'ordre d'exécution de ces filtres est déterminé en fonction de l'ordre de déclaration des éléments <filter-mapping> dans le fichier de déploiement.
Dans l'exemple suivant, si la requête http est : http://localhost:8181/test/MyServlet1
Alors les filtres seront exécutés dans l'ordre suivant : MyFilter1, MyFilter2, MyFilter3