Paramètres de page
Résolu
Pierre1310
Messages postés
8564
Date d'inscription
Statut
Membre
Dernière intervention
-
Pierre1310 Messages postés 8564 Date d'inscription Statut Membre Dernière intervention -
Pierre1310 Messages postés 8564 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un petit problème que je vais vous expliquer.
Soit une page A possédant un bouton de commande permettant de charger une page B en lui indiquant des paramètres via l'url. (Cette page marche parfaitement).
Ce que je dois faire c'est mettre une page que j'appellerai X entre A et B.
Donc mes paramètres doivent faire A->X puis X->B.
Hors il s'avère que mes paramètres vont de A vers X mais quand j'appelle dans le code pour X vers B, les paramètres sont nuls :/
Mon code pour les paramètres :
Je développe en JEE sur la plate forme Eclipse Mars.
Merci d'avance pour l'aide :)
J'ai un petit problème que je vais vous expliquer.
Soit une page A possédant un bouton de commande permettant de charger une page B en lui indiquant des paramètres via l'url. (Cette page marche parfaitement).
Ce que je dois faire c'est mettre une page que j'appellerai X entre A et B.
Donc mes paramètres doivent faire A->X puis X->B.
Hors il s'avère que mes paramètres vont de A vers X mais quand j'appelle dans le code pour X vers B, les paramètres sont nuls :/
Mon code pour les paramètres :
try { FacesContext fc = FacesContext.getCurrentInstance(); Map<String, String> params1 = fc.getExternalContext().getRequestParameterMap(); nomPresse = params1.get("nomPresse"); nomMoule = params1.get("nomMoule"); nomReference = params1.get("nomReference"); nomEquipe = params1.get("nomEquipe"); nomEquipe = nomEquipe.substring(1); nomEquipe = "É" + nomEquipe; if (nomPresse != null) { accueil = true; } // fnc.setNiveau_fnc(10); } catch (Exception e) { System.out.print("Fnc créer depuis la page ajouter une FNC!"); }
Je développe en JEE sur la plate forme Eclipse Mars.
Merci d'avance pour l'aide :)
A voir également:
- Paramètres de page
- Impossible de supprimer une page word - Guide
- Parametres de mon ordinateur - Guide
- Paramètres dns - Guide
- Paramètres de confidentialité - Guide
- Numéro de page word - Guide
1 réponse
Bonjour,
Tout d'abord je ne connais pas JSF, donc ça va rester théorique...
Tu ne devrais pas faire confiance à ta page X pour te renvoyer les infos de la page A quand tu en auras besoin dans B. Si tu as besoin de ces données, stocke les sur le serveur au moment A→X et récupère les au moment X→B tu auras la garantie que ces données n'ont pas été corrompu entre A et B.
Sinon, tu peux utiliser un cookie, A→X créé un cookie, et X→B le récupère, ça te permet de faire transiter des données sans passer par les paramètres de GET/POST, mais attention: un cookie peut être modifié, il n'y a donc pas l'absolu certitude que ce sont bien les même données que celles de A.
Tout d'abord je ne connais pas JSF, donc ça va rester théorique...
Tu ne devrais pas faire confiance à ta page X pour te renvoyer les infos de la page A quand tu en auras besoin dans B. Si tu as besoin de ces données, stocke les sur le serveur au moment A→X et récupère les au moment X→B tu auras la garantie que ces données n'ont pas été corrompu entre A et B.
Sinon, tu peux utiliser un cookie, A→X créé un cookie, et X→B le récupère, ça te permet de faire transiter des données sans passer par les paramètres de GET/POST, mais attention: un cookie peut être modifié, il n'y a donc pas l'absolu certitude que ce sont bien les même données que celles de A.
J'ai trouvé comme formule :
Sur des forums java mais je ne peux pas l'utiliser, je ne comprends pas :/
J'ai ça comme paramètres donc 4 variables transmises.
Je pourrai récupérer tous les paramètres avec cette ligne?
Lors de la connexion d'un utilisateur tu peux lui attribuer une session sur le serveur.
Tant que la session est valide (elle expire au bout d'un certain temps - la durée est configurable) chaque requête sera traitée par la même session, tu peux donc stocker des valeurs dans cette session lors d'une première requête pour les récupérer lors des requêtes suivantes.
Par exemple : si tu t'enregistres sur un site web avec un login/mot de passe, généralement tu peux travailler plusieurs heures sans avoir besoin de te reconnecter.
Techniquement l'identifiant de la session est transmis dans un cookie "jsessionid" lors de la création de la session et récupéré à chaque fois pour retrouver la session sur le serveur.
Voir : Servlets - Gestion des sessions
Dans l'exemple de code que j'ai donné, je récupère les paramètres de ta requête (la Map), je les stockes tel quel dans la session, et à la requête suivante je les récupères, comme s'ils venaient de m'être transmis alors qu'en fait ils m'ont été transmis à la requête précédente.
Remarque : j'aurais pu être plus fin, et au lieu de stocker toute la Map en session, stocker individuellement chaque paramètre nomPresse, nomMoule, etc.