Bonjour à tous , j'ai suivi le tuto Médéric Munier dont lequel il a expliqué le fonctionnement des Filtes, il a créé un dossier dans le WebContent portant le nom de restreint il contient l'ensemble des pages jsp qui doivent pas être accessible sans avoir s’authentifier. voici le code de déclaration dans le web.xml
lorsque j'exécute l'application, même sans avoir authentifier j'accède toujours aux pages du dossier restreint. Comment puis-je créer un espace membre sachant que tout les jsp doivent être déclarer dans le WEB-INF ?
Le paramètre url-pattern correspondant à l'URL sur ton site (Exemple : http://www.toto.con/restreint/...) et non par rapport à l'arborescence de tes fichiers .jsp.
Ensuite il faut voir le code source de ton Filter.
Commence par mettre à mettre un point d'arrêt dans ton filter pour vérifier qu'il est bien invoqué sur les bonnes URL.
Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
Comme vous le savez si on veux accéder par exemple à l'url : http://www.tuto.com/home , ici home est la servlet qui correspond à la page home.jsp par exemple. Maintenant imaginez que je veux que la page home soit accessible à tout le monde et que monPanier et mesProduits sont deux servlets qui correspond à deux pages jsp dont l'accès est réservé aux membres qui sont connectés au site, comme vous venez de dire url-pattern correspond à l'URL du site et non à l'arborescence de des fichiers .jsp, en gros si j'ai bien compris je doit restreindre l'accès aux servlets et non aux pages jsp, dans ce cas, comment je vais déclarer le code du Filter dans le web.xml ?
Les Servlet Premièrement tu déclares tes Servlets : nom et classe Ensuite tu associes des Servlet à des URL. Lors du chargement d'un URL, Java va appeler la classe correspondante.
Les filtres Premièrement tu définies des filtres : nom et classe
Ici par exemple, le chargement de la page http://www.toto.con/restreint/mon-panier passera par ton filtre com.sdzee.filters.RestrictionFilter
A aucun moment moment les pages .jsp n'interviennent dans le web.xml. Le seul lien entre les .jsp est au niveau de la Servlet, lorsque tu "forward" la requète vers ta JSP comme ceci :
merci pour cette explication, au fait l'erreur est dans la déclaration de la servlet au lieu de faire
<url-pattern>/restreint/monPanier</url-pattern>
j'ai fais
<url-pattern>monPanier</url-pattern>
c'est pour ça que le filter ne marche pas
Créer un espace membre avec un Filtre
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
moi ce que je veux faire, c'est de créer ce dossier dans le WEB-INF, du coup j'ai changé le code par celui la :