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 :

Comment utilisé @Async pour synchroniser deux thread (timer java et les propriété d'un Bean JSF)


Sujet :

Servlets/JSP Java

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

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

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut Comment utilisé @Async pour synchroniser deux thread (timer java et les propriété d'un Bean JSF)
    Bonjour,

    Mon but c'est de faire un
    mais par le timer (que j'ai fait en spring)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        @Async 
        public void printMe() {
            System.out.println("Run Me ~");
            //Session invalidet
           FacesContext context = FacesContext.getCurrentInstance();
           HttpSession session = (HttpSession) context.getExternalContext().getSession(false);        
           session.invalidate();         
            //this.destroy();     
        }
    Mais la session est toujours null comme c’est un autre Thread qui lance la méthode pas celui qui est dans mon Managed Bean session.

    Comment je peux partager ma session entre c'est deux Thread ? (ou je dois faire autre chose une autre Annotation! je suis perdu)

    Merci de votre aide c'est urgent


    Nb : la méthode "printMe()" que mon timer déclenché qui est déjà dans mon Managed Bean session.
    NB: j'ai mis @Async juste pour tester ça n’a rien changer.

  2. #2
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

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

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Personne pour me donnais un coût de pousse
    Je vais tante de réexplique mon problème d'une autre façon que voilà :


    Ma seule contrainte c'est d'utiliser un Tomcat. Mais je peux utiliser du spring 3 et JPA Hibernate puis coter web JSF

    Je cherche un équivalant a EJB Timer.

    Mon but c'est de faire un : session.invalidate(); mais par un timer (après 10m sans action utilisateur).

    Mon problème est : sachant que le timer utilise un Thread propre à lui et quand je veux invalider la session dans un managedBean il trouve la session=null dans son processus. (J’ai sauvegarder la session dans une var Statique mais sa invalide toutes les sessions et puis c'est contre performent de sauvegardés toutes les sessions alors quel est déjà géré pas le conteneur web)

    Merci de me proposer des solutions ?

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/10/2013, 23h39
  2. Réponses: 7
    Dernier message: 25/03/2013, 08h10
  3. [Débutant] comment utilisé MATLAB pour l'acquisition de données
    Par lambdaprime dans le forum MATLAB
    Réponses: 2
    Dernier message: 18/10/2010, 09h52
  4. [XL-2007] Comment utiliser TextBox pour déterminer deux intervales
    Par chikitin dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/07/2010, 15h18
  5. Réponses: 8
    Dernier message: 07/08/2006, 09h59

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