• Home
  • Docker
  • Kubernetes
  • LLMs
  • Java
  • Ubuntu
  • Maven
  • Big Data
  • Archived
EJB | Stateful Session Beans
  1. Introduction
  2. Définir un stateful bean
  3. Annotations @Local, @Remote, @LocalBean
    1. Annotation @Local
    2. Annotation @Remote
    3. Annotation @LocalBean
  4. Annotations @PostConstruct, @PreDestroy, @PrePassivate, @PostActivate
    1. Annotation @PostConstruct
    2. Annotation @PreDestroy
    3. Annotation @PrePassivate
    4. Annotation @PostActivate

  1. Introduction
    Un stateful bean ("stateful session bean") est une classe Java que le container EJB instancie et rend accessible ses méthodes publiques.
    Le stateful bean est accessible en utilisant l'injection automatique ou JNDI.

    Les valeurs des variables d'instance du stateful bean sont conservées entre différents appels du stateful bean pour une session.
  2. Définir un stateful bean
    Pour définir une classe comme étant un stateful bean il faut, typiquement, annoter la classe avec l'annotation @Stateful.

    Code source (JBoss) de l'annotation @Stateful:

    L'annotation @Stateful accepte 3 paramètres :
    • String name()
      Le nom EJB du stateful bean.
      Ce nom sera utilisé pour référencer le stateful bean (avec DI ou JNDI).
      Par défaut, si aucune valeur n'est spécifiée pour ce paramètre, il sera initialisé par le nom de la classe du stateful bean (sans le nom du package).
      Typiquement, on s'en sert pour donner un nom plus explicite au stateful bean ou pour distinguer le stateful bean d'une autre Stateful qui a le même nom de la classe.

    • String mappedName()
      Ce paramètre permet de mapper le stateful bean à un nom global définit dans le container EJB (assez souvent un nom JNDI).

    • String description()
      Nom descriptif du stateful bean.

    Exemple :

  3. Annotations @Local, @Remote, @LocalBean

    1. Annotation @Local
      Voir les détails dans la page @Stateless.
    2. Annotation @Remote
      Voir les détails dans la page @Stateless.
    3. Annotation @LocalBean
      Voir les détails dans la page @Stateless.
  4. Annotations @PostConstruct, @PreDestroy, @PrePassivate, @PostActivate
    Annotations qui gèrent le cycle de vie du stateful bean :

    1. Annotation @PostConstruct
      Voir les détails dans la page @Stateless.
    2. Annotation @PreDestroy
      Voir les détails dans la page @Stateless.
    3. Annotation @PrePassivate
      Code source (JBoss) de l'annotation @PrePassivate:

      Cette annotation permet de marquer une méthode du stateful bean qui va être exécuter par le container EJB juste avant la passivation du stateful bean.
    4. Annotation @PostActivate
      Code source (JBoss) de l'annotation @PostActivate:

      Cette annotation permet de marquer une méthode du stateful bean qui va être exécuter par le container EJB directement après l'activation du stateful bean.

      La méthode annotée par l'annotation @PostActivate est garantie d'être exécutée avant les autres méthodes métiers du stateful bean.
© 2025  mtitek