IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

[JSP]La validation d'un formulaire aboutit dans un doGet !!


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut [JSP]La validation d'un formulaire aboutit dans un doGet !!
    Salut,

    J'ai un formulaire qui se trouve dans une fenêtre différente de la fenêtre principale (un pop-up en qqs sorte)

    La validation du formulaire est faite sous cette forme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form action="Resultat" method="post" class="formulaire_recherche" onsubmit="opener.location='Resultat'; self.close(); return true;">
    le but du jeu est de soumettre le formulaire, de fermer la fenêtre contenant le même formaulaire et d'envoyer le traitement dans la fenêtre mére. Le truc c'est que la soumission du formulaire aboutit dans la méthode doGet de ma classe

    Sans être expert en Java il me semble que c'est l'evenement doPost qui devrait être sollicité : :

  2. #2
    Membre habitué Avatar de XristofGreek
    Inscrit en
    Août 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 164
    Points : 174
    Points
    174
    Par défaut
    hop hop hop ! je viens de m'apercevoir d'un truc là !

    tu a écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onsubmit="opener.location='Resultat';
    c'est de là que ça vient le passage dans doGet c'est sûr. en revanche je ne sais pas si du coup il éxécute quand même la requête appelée dans le formulaire par action=Resultat, étant donné que tu fermes la fenêtre sur l'envoi du formulaire, en tout cas si c'est le cas tu devrais avoir un passage dans le doGet et un passage dans le doPost

  3. #3
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut
    Si je comprend bien le

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onsubmit="opener.location='Resultat';
    aboutit forcement dans le doGet. Mais pourquoi donc

    Sinon il execute bien la requete appelé par action mais dans la fenetre "pop-up". Or c'est dans ma fenetre mere que je souhaite executer le taitement.

  4. #4
    Membre habitué Avatar de XristofGreek
    Inscrit en
    Août 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 164
    Points : 174
    Points
    174
    Par défaut
    ok, ça doit pouvoir se faire.

    je sais pas si ça marche mais essaye peut-être de jouer avec le target au lieu du onsubmit, genre :

    NB : à la place de _top c'est peut-être autre chose... peut-être _opener

    Ou alors peut-être que tu n'a pas besoin de passer par un POST (visiblement tu n'a qu'un paramètre me trompe-je ? ) auquel cas tu ecrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onsubmit="opener.location='Resultat?recherche=motRecherche';....

  5. #5
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut
    à l'origine, j'ai essayé avec l'attribut target mais sans résultat.

    Maintenant je crois que tu as raison et je vais faire passer mes valeurs par l'url. C'est dommage il faut que je fasse deux traitement identique pour le post et le get. Je serais bien rester qu'en post.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 56
    Points
    56
    Par défaut
    Pourquoi ne pas appeler doPost() depuis ta méthode doGet() ?

  7. #7
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut
    Ah ouais ?? Ca se fait ca ?? Bien vu !!

    Mais comment de ma méthode doGet appeller ma méthode doPost.
    Cela signifie t'il qu'il faut que je fasse suivre mes variable ??

  8. #8
    Membre habitué Avatar de XristofGreek
    Inscrit en
    Août 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 164
    Points : 174
    Points
    174
    Par défaut
    tes variables tu les recupère avec l'objet HTTPServletRequest

  9. #9
    Membre confirmé
    Avatar de Glob
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Avril 2002
    Messages
    428
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Avril 2002
    Messages : 428
    Points : 630
    Points
    630
    Par défaut
    Citation Envoyé par Jones
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onsubmit="opener.location='Resultat';
    aboutit forcement dans le doGet. Mais pourquoi donc
    Pasque les manipulations genre <frame>.location.href=... finissent en doGet. C'est la même chose que de taper l'URL dans la barre de navigation de ton browser.

  10. #10
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut
    Glob> Merci pour cette précision c'est bon à savoir

    Pour l'appel du doPost à partir du doGet, j'ai à peu prés bien saisie le fonctionnement des HttpSrvletRequest et HttpServletRespons.

    Pour concrétiser tout cela j'ai fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    TraitementRecherche tr = new TraitementRecherche();
    tr.doPost(req,rsp);
    où TraitementRecherche est le nom de ma classe bien sur.

    Mais j'aboutit à une erreur

  11. #11
    Membre habitué Avatar de XristofGreek
    Inscrit en
    Août 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 164
    Points : 174
    Points
    174
    Par défaut
    si TraitementRecherche est ta servlet tu appelle doPost(...) dans le doGet()

  12. #12
    Membre du Club
    Profil pro
    Informaticien
    Inscrit en
    Septembre 2002
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Septembre 2002
    Messages : 69
    Points : 63
    Points
    63
    Par défaut
    Ok vous étes les meilleurs .

    Ca marche impecable ormis pour les variables non initialisés, mais c'est un autre problème dont je devrais m'en sortir seul.

    Merci beaucoup, je n'ai pas encore trop d'experience avec java et c'ets le genre de coup de main qui permet de ne pas prendre des solutions trop tortueuses .

    Jones

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 28/05/2008, 12h43
  2. [MySQL] Vérifier une URL dans la validation d'un formulaire
    Par groupejtt dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 30/11/2006, 12h48
  3. Réponses: 23
    Dernier message: 11/04/2006, 18h33
  4. Valider un formulaire contenu dans une iframe
    Par snoopy5.0 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/04/2005, 12h14
  5. [JSP]formulaire de JSP ne valide pas
    Par rivierem dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 21/10/2004, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo