Est-il normal que deux classes clientes distinctes qui font un lookup sur un EJB Stateful n'aient pas la même instance de cet EJB ? Les attributs de mon Stateful sont réinitialisés après chaque lookup. Il y a quelque chose à configurer peut être ?
Est-il normal que deux classes clientes distinctes qui font un lookup sur un EJB Stateful n'aient pas la même instance de cet EJB ? Les attributs de mon Stateful sont réinitialisés après chaque lookup. Il y a quelque chose à configurer peut être ?
Bonjour,
Oui, je dirais que c'est normal.
Si mes souvenirs sont bons, pour garder l'état d'un stateful il faut conserver sa référence. En gros, il me semble qu'à chaque lookup tu as une nouvelle instance.
Donc passer par un singleton côté client qui s'occuperait de faire les lookup et de garder une référence sur mes EJB avec des getters serait une solution convenable ?
De plus, pour tester si l'utilisateur est connecté, un de mes EJB serveur utilise un stateful que j'instancie via une injection avec @EJB. Vaut-il mieux laisser la charge au code client de faire ces tests avant les appels serveurs ? Car actuellement j'ai toujours le problème que @EJB me génère une autre instance, du coup les données membres de mon EJB client et celle de mon EJB serveur ( qui est utilisée donc par un autre EJB ) ne sont pas les mêmes.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager