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

Tomcat et TomEE Java Discussion :

[ session ] tomcat


Sujet :

Tomcat et TomEE Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    229
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 229
    Par défaut [ session ] tomcat
    Bonjour,

    J'ai une application web tournant sur tomcat. Après l'authentification d'un utilisateur, je souhaite savoir comment supprimer la session après 10 minutes d'inactivité.

    Au niveau de tomcat, comment limiter la connexion à une seule IP pour la meme session?



    Merci

  2. #2
    Membre éclairé
    Inscrit en
    Mai 2004
    Messages
    297
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 297
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    HttpSession session = null;
    session.setMaxInactiveInterval()
    Je n'ai pas testé mais cela peut etre une piste.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 97
    Par défaut
    Je crois que tu peux egalement definir la durée de validité d'un session dans le fichier web.xml...

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par sg-40
    Je crois que tu peux egalement definir la durée de validité d'un session dans le fichier web.xml...
    Effectivement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <session-config> 
    	<session-timeout>30</session-timeout>  <!-- pour 30 minutes -->
    </session-config>

  5. #5
    Membre averti
    Inscrit en
    Novembre 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 19
    Par défaut Re: [ session ] tomcat
    Citation Envoyé par hocinema
    Bonjour,

    J'ai une application web tournant sur tomcat. Après l'authentification d'un utilisateur, je souhaite savoir comment supprimer la session après 10 minutes d'inactivité.

    Au niveau de tomcat, comment limiter la connexion à une seule IP pour la meme session?



    Merci
    - pour specifier la durée de la session, c'est dans le fichier web.xml que cela se fait.
    - pour limiter la connexion à une seule adresse IP pour la meme session, tu peux faire cela avec une valve.

    voila un exemple de valve sur lequel t'appuyer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    package fr.pitivier.valve;
     
    import java.io.IOException;
    import java.util.Vector;
     
    import javax.servlet.ServletException;
     
    import org.apache.catalina.SessionEvent;
    import org.apache.catalina.SessionListener;
    import org.apache.catalina.connector.Request;
    import org.apache.catalina.connector.Response;
    import org.apache.catalina.valves.ValveBase;
    import org.apache.catalina.Session;
     
    public class PitivierValve extends ValveBase implements SessionListener {
     
        Vector sessions = new Vector();
     
        public void invoke(Request request, Response response)
            throws IOException, ServletException {
     
            System.out.println("fr.pitivier.valve.PitivierValve - Invoke -> Webapp = " + request.getContext().getDisplayName());
            System.out.println("fr.pitivier.valve.PitivierValve - Invoke -> Session ID = " + request.getSession().getId());
            System.out.println("fr.pitivier.valve.PitivierValve - Invoke -> Requested URI = " + request.getRequestURI());
     
            boolean found = false;
            for (int i = 0; i < sessions.size(); i++) {
                if (request.getSessionInternal() == (Session)sessions.get(i)) {
                    found = true;
                    break;
                }
            }
     
            if (!found) {
                sessions.add(request.getSessionInternal());
                request.getSessionInternal().addSessionListener(this);
            }
     
            getNext().invoke(request, response);
        }
     
        public void sessionEvent(SessionEvent event) {
     
            System.out.println("fr.pitivier.valve.PitivierValve - SessionEvent -> Event = " + event.getType());
            System.out.println("fr.pitivier.valve.PitivierValve - SessionEvent -> Session ID = " + event.getSession().getId());
     
            if (!Session.SESSION_DESTROYED_EVENT.equals(event.getType())
                    && (!Session.SESSION_PASSIVATED_EVENT.equals(event.getType())))
                return;
     
            for (int i = 0; i < sessions.size(); i++) {
                if (event.getSession() == (Session)sessions.get(i)) {
                    sessions.remove(event.getSession());
                    break;
                }
            }
        }
    }

  6. #6
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    229
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 229
    Par défaut
    J'ai récupéré le code mais les package :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import org.apache.catalina.connector.Request; 
    import org.apache.catalina.connector.Response;
    n existe pas dans le catalina.jar de tomcat 5.0.




    Merci

  7. #7
    Membre averti
    Inscrit en
    Novembre 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 19
    Par défaut
    Citation Envoyé par hocinema
    J'ai récupéré le code mais les package :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import org.apache.catalina.connector.Request; 
    import org.apache.catalina.connector.Response;
    n existe pas dans le catalina.jar de tomcat 5.0.




    Merci
    effectivement, mon exemple est pour Tomcat 5.5.

    Pour Tomcat 5.0, ca devrait marcher comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import org.apache.catalina.Request; 
    import org.apache.catalina.Response;

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

Discussions similaires

  1. Nb session tomcat
    Par JeromeL83 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 03/12/2009, 16h45
  2. Gestion de session tomcat
    Par jalalos dans le forum Tomcat et TomEE
    Réponses: 0
    Dernier message: 12/08/2009, 17h21
  3. URLConnection & Session tomcat
    Par loman02 dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 20/06/2009, 02h28
  4. Sauvegarde de session tomcat
    Par sletis dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 03/02/2009, 16h02
  5. [Tomcat]persistence de session Tomcat
    Par coilolo dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 22/06/2004, 09h47

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