Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Envoi d'une requete POST d'une servlet

3 réponses
Avatar
delphine.ziegler
Bonjour,

J'ai une page JSP avec un formulaire d'authentification. L'action du
formulaire est une servlet. Cette servlet v=E9rifie les donn=E9es saisies
par l'utilisateur puis redirige le client vers une page qui validera
l'authentification de l'utilisateur. Cette page ne fonctionne que si
elle est appel=E9e =E0 partir d'une op=E9ration POST. J'ai essay=E9 de
faire cela en ouvrant une connexion HttpURLConnection mais =E7a ne
marche pas : j'ai bien mes donn=E9es dans les POST Data mais la requete
est consid=E9r=E9e comme un GET (j'ai pourtant fait
setRequestMethod("POST")).

Quelqu'un a-t-il une id=E9e ? Merci

Delphine

3 réponses

Avatar
cho7
Bonjour,

pas sûr d'avoir tout compris mais je me lance.
Dans la page jsp, ton formulaire doit etre du genre
<form action="/monservlet/" method="post">

N'oublie pas l'attribut method

Ensuite pour rediriger vers une page donnée a partir de la servlet, il faut
un requestDispatcher, qui va faire suivre la page.

en gros à la fin de ta servlet :
getServletContext().getRequestDispatcher("/mapagequivalidelautentification.j
sp".forward(req,resp);

où req et resp sont respectivement le HttpServletRequest et le
HttpServletResponse de ta servlet.

Ainsi si l'attribut req etait initialement en POST, tu es sûre qu'en le
forwardant il sera en POST.


En esperant que ca t'aide




a écrit dans le message de news:

Bonjour,

J'ai une page JSP avec un formulaire d'authentification. L'action du
formulaire est une servlet. Cette servlet vérifie les données saisies
par l'utilisateur puis redirige le client vers une page qui validera
l'authentification de l'utilisateur. Cette page ne fonctionne que si
elle est appelée à partir d'une opération POST. J'ai essayé de
faire cela en ouvrant une connexion HttpURLConnection mais ça ne
marche pas : j'ai bien mes données dans les POST Data mais la requete
est considérée comme un GET (j'ai pourtant fait
setRequestMethod("POST")).

Quelqu'un a-t-il une idée ? Merci

Delphine
Avatar
delph
Merci mais en fait je ne peux pas utiliser la méthode forward parce
que ma page de validation n'est pas forcément sur le même contexte et
encore moins sur le meme serveur.
Avatar
delph
Je rectifie : ma requete est bien considérée comme une requete POST
mais mon client n'est pas redirigée vers la page.