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

JSF Java Discussion :

[JSF + EJB3] Application J2EE répartie sur plusieurs serveurs


Sujet :

JSF Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 4
    Points
    4
    Par défaut [JSF + EJB3] Application J2EE répartie sur plusieurs serveurs
    Bonjour à tous,

    Tout d'abord, j'espère poster cette question au bon endroit. Si ce n'est pas le cas, veuillez m'en excuser.

    Voici l'énoncé de ma question :

    Imaginons une application J2EE (un EAR) qui contiendrait 2 éléments : un projet Web (WAR) et un projet EJB.

    Du côté du projet Web, avec JSF, dans un backing bean, il est possible d'injecter une référence d'EJB via l'annotation @EJB. Jusque là pas de problème. J'arrive très bien à le faire lorsque les 2 projets (Web et EJB) sont dans le même EAR.

    Imaginons maintenant que je déploie :
    • la partie EJB sur un serveur J2EE (glassfish) 1,
    • la partie Web sur un autre serveur J2EE (ou même un conteneur de servlet Tomcat) 2.


    Mes questions sont les suivantes :
    • Puis-je toujours utiliser les annotations @EJB pour injecter mes EJB distants ?
    • Si oui, quelle est la configuration à mettre en place (pour donner le nom du serveur distant, le port ou autres informations permettant de savoir où sont situés les EJB à invoquer) ?
    • Suis-je obligé d'enlever mes annotations @EJB pour les remplacer par un système faisant appel à des lookup JNDI ?


    Tout ça pour dire que j'aimerais bien séparer :
    • ma couche de traitement (service + DAO),
    • ma couche de présentation (vues + controleurs).


    Merci d'avance pour votre aide / vos réponses.

    Cordialement

  2. #2
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    tu ne peux pas utiliser directement les objets EJB dans ton backing bean, tu dois passer par des objets DTO ou VO (Data transfert Object ou Value Object)

    pour les appels, soit faire un appel distant d'EJB ou utiliser des web services.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Si, on peut tout à fait utiliser un EJB dans un Bean JSF.
    En utilisant l'annotation @EJB, une référence de l'EJB est directement injectée et on peut très bien faire appel aux méthodes de l'EJB.

    Jusque là, pas de problème.

    Pour ce qui est de mon problème, il semblerait que le post de sebastien.hebert réponde parfaitement à ma question.

    En fait, il suffit d'ajouter une config dans le fichier sun-web.xml, indiquant à quelle URL trouver la référence de l'EJB à injecter. Ensuite, en donnant un nom à cette référence et en utilisant ce même nom dans l'annotation @EJB, on peut injecter un EJB distant (situé sur un autre serveur) dans un Bean JSF.

Discussions similaires

  1. creer un cloud répartis sur plusieurs serveurs distants
    Par altair8080 dans le forum Cloud Computing
    Réponses: 2
    Dernier message: 07/06/2015, 08h16
  2. Une table répartie sur plusieurs onglets
    Par cdespont dans le forum IHM
    Réponses: 8
    Dernier message: 10/08/2007, 14h20
  3. Hebergement web - plusieurs site sur plusieurs serveur
    Par annega22 dans le forum Serveurs (Apache, IIS,...)
    Réponses: 4
    Dernier message: 23/04/2007, 16h52
  4. [Système] Code réparti sur 2 serveur ?
    Par Ahmed0012 dans le forum Langage
    Réponses: 6
    Dernier message: 10/08/2006, 14h59
  5. Réponses: 12
    Dernier message: 02/05/2006, 16h31

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