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

Struts 1 Java Discussion :

Gestion des Request/Session


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Analyste-developpeur java
    Inscrit en
    Mai 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste-developpeur java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2010
    Messages : 135
    Par défaut Gestion des Request/Session
    Bonjour!

    Je suis nouvelle dans l'utilisation de Struts et il y a une chose que je saisis mal... C'est la manière dont on peut utiliser les request et les session.

    Je vais prendre le cas d'une page JSP a.jsp qui a été affichée par une action struts AffichageA.do.
    AffichageA à la fin de laquelle on a mis un objet Obj dans la request de la Servlet et qui finit par un mapping.mappingForward((a.jsp))
    (conversion rapide pour ne pas avoir a vous donner un semblant de struts-config).

    Si par exemple dans cette page a.jsp un tag fait s’exécuter une autre action Struts: PopupB.do. Est ce que dans cette Action Struts, si on écrit l'instruction pageContext.getRequest.getParameter("Obj"); on pourra réavoir acces à l'objet Obj déposé dans la request avant le lancement de la page a.jsp.
    Et au retour dans la page a.jsp, est ce que dans la request l'objet Obj sera toujours là?

    En fait je ne sais pas si je suis claire (je l'espère) mais en gros j'aimerais savoir comment sont gérés les request et les sessions des Servlets. A quels moment elles sont créées, détruites, dans quel cas il peut être intéressant de déposer un objet dedans et dans quel cas non.

    Voila! Toute doc m'intéresse!

  2. #2
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    Tout d'abord bienvenue au club
    quelques méthodes de création liées à la requête (HttpServletRequest):
     HttpSession getSession() : retourne la session associée à l’utilisateur
     HttpSession getSession(boolean p) : création selon la valeur de p
     Gestion d’association (HttpSession)
     Enumeration getAttributNames() : retourne les noms de tous les
    attributs
     Object getAttribut(String name) : retourne l’objet associé au nom
     setAttribut(String na, Object va) : modifie na par la valeur va
     removeAttribut(String na) : supprime l’attribut associé à na
     Destruction (HttpSession)
     invalidate() : expire la session
     logout() : termine la session

    Quand vous dites getSession (true), cette méthode vérifie si une session est déjà existants pour l'utilisateur. Si une session est en vigueur, il retourne cet objet session, par ailleurs cree une nouvelle session. Quand vous dites getSession (faux), cette méthode vérifie si une session est en vigueur. Si oui, alors il retourne la référence de cet objet session, sinon 'null'.

    Bon courage !

  3. #3
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    Tu peux definir le temps d'expiration des sessions dans le fichier web.xml !

  4. #4
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    En general, tu utilises les request quand tu passes immediatement d'une page a une autre, et les sessions, quand tu veux utiliser une variable dans d'autre pages qui ne sont pas obligatoirement successeurs à la page ou la variable est declarée, !

  5. #5
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    request.getparameter(...) pour les request !

  6. #6
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Par défaut
    Tu sais qu'il existe une fonction "Edit" ?

    Sinon les paramètres de la requête sont ceux qui sont soumis côté navigateur mais on peut lier des objets à un contexte particulier :
    • Page : Les attributs d'une page (JSP) sont conservés tout au long du traitement de la page et ne sont pas conservés une fois la page traitée.
    • Request : Les attributs de requêtes sont conservés tout le long du traitement de la requête, c'est-à-dire jusqu'à ce que la réponse soit émise au client. Les objets sont donc accessibles après les forward de struts ou l'utilisation du dispatcher
    • Session : Les attributs de session sont conservés tout le long de la session, c'est-à-dire après plusieurs requêtes.
    • Servlet : Les paramètres de configuration d'une servlet est partagée par toutes les sessions/requêtes que la servlet traite. Si une servlet est instanciée plusieurs fois chacune pourra avoir ses propres paramètres de configuration. Ceux qui ne sont pas modifiables et sont spécifiés dans le fichier "/WEB-INF/web.xml" de ton application
    • Web application : Les paramètres de configuration d'un servlet context est partagée par toutes les servlet de la même application. Ceux qui ne sont pas modifiables et sont spécifiés dans le fichier "/WEB-INF/web.xml" de ton application


    Les objets doivent être placés au contexte le plus bas/proche où il est utilisé. Pour éviter des effets de bords et de gérer le nettoyage des paramètres.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

Discussions similaires

  1. Gestion des différentes sessions d'utilisateurs
    Par cjacquel dans le forum Flex
    Réponses: 1
    Dernier message: 27/01/2009, 09h20
  2. gestion des connexions / sessions en .NET
    Par newtito dans le forum Framework .NET
    Réponses: 3
    Dernier message: 18/06/2008, 14h07
  3. [JMeter] Gestion des cookies + sessions
    Par benratti dans le forum Tests et Performance
    Réponses: 3
    Dernier message: 15/10/2007, 11h36
  4. gestion des Variables Sessions
    Par Landolsi dans le forum ASP.NET
    Réponses: 8
    Dernier message: 08/02/2007, 13h30
  5. Réponses: 3
    Dernier message: 04/08/2004, 19h48

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