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

Java EE Discussion :

[débutant] [Méthode]EJB et présentation web [EJB]


Sujet :

Java EE

  1. #1
    Membre éclairé
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Points : 663
    Points
    663
    Par défaut [débutant] [Méthode]EJB et présentation web
    Bonjour,

    Je souhaite utiliser un EJB, pas seulement des getters et setter, mais également des méthodes métier au travers d'une interface web.

    Je pensais utiliser jsp pour la construction des pages, et passer par une servlet pour manipuler le Bean.

    Est-ce qu'un développeur pourait m'expliquer quelle est la bonne approche pour réaliser cela sans utiliser de framework tel que struts.

    Pour commencer, depuis le client on appelera une jsp ou une servlet?
    Si une jsp souhaite invoquer un getter du bean, comment s'assurer qu'il accédera à la même instance que le servlet.
    etc..

    J'ai juste besoin d'avoir le cadre pour partir dans la bonne direction.

    Merci d'avance pour le coup de main.

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Salut,

    à priori :
    - jsp pour la présentation
    - servlet pour les traitements (contrôleur)
    - business delegate pour l'abstraction entre le contrôleur et la couche ejb
    - ejb session

    voila grosso modo une architecture classique, sachant que tu peux décider de te passer du business delegate.

    P.S. : ta couche d'accès aux données serait derrière les EJBs ?

  3. #3
    Membre éclairé
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Points : 663
    Points
    663
    Par défaut
    Citation Envoyé par Ricky81
    P.S. : ta couche d'accès aux données serait derrière les EJBs ?
    Exactement..

    Si j'ai bien compris, mes liens et posts de formulaires pointent vers une servlet?

    J'accède à mes EJB directement depuis mes servlets, donc pas besoin de business delegate, aprioris.

    pour accéder à la même instance de mon EJB depuis une servlet comme depuis mon jsp, je dois la déclarer comme EJB session, c'est bien ça? (si oui, je n'ai rien contre une petite explication)

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Oui le but est de déporter tout traitement dans la servlet pour respecter le paradigme MVC.

    Et bien tu as 3 types d'EJB :
    - session (avec ou sans état)
    - entité (avant Java EE 5, évites)
    - message

    L'architecture classique est d'avoir des EJB Session "en facade" qui, s'il y a lieu, délegerons à d'autres EJB Session ou Entité.

    Donc oui, ce sont des EJB Session que tu utiliseras dans tes servlets.
    Si tu es en J2EE <= 1.4, au niveau optimisation, tu pourras éventuellement mettre tes beans home en cache pour que seul le premier appel soit consommateur en temps.
    Ne code que le strict minimum pour l'instanciation de ton EJB Session dans ta Servlet. Tu peux par exemple déporter tout le RMI etc... dans une classe utilitaire.

    En espérant avoir répondu à tes interrogations.

    Eric

  5. #5
    Membre éclairé
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Points : 663
    Points
    663
    Par défaut
    Citation Envoyé par Ricky81
    En espérant avoir répondu à tes interrogations.
    Eric
    Ca m'aide bien, merci...
    Je suis sur JBoss, donc J2EE 1.4... Faut que je potasse un peu tout ça...

    PS: Je pourrais savoir pourquoi tu as une photo de mon chat comme avatar?

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    Citation Envoyé par Eric Berger
    PS: Je pourrais savoir pourquoi tu as une photo de mon chat comme avatar?
    Taratata, c'est ma chatte !

  7. #7
    Membre du Club

    Profil pro
    Inscrit en
    Août 2006
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 51
    Points : 46
    Points
    46
    Par défaut
    Citation Envoyé par Eric Berger
    Exactement..

    Si j'ai bien compris, mes liens et posts de formulaires pointent vers une servlet?

    J'accède à mes EJB directement depuis mes servlets, donc pas besoin de business delegate, aprioris.

    pour accéder à la même instance de mon EJB depuis une servlet comme depuis mon jsp, je dois la déclarer comme EJB session, c'est bien ça? (si oui, je n'ai rien contre une petite explication)

    Le but du Business Delegate est de d&#233;barasser le client de sa d&#233;pendance vis &#224; vis de la logique m&#233;tier (ejb par ex).
    Si, par exemple, un d&#233;veloppeur d'ejb change la signature d'une de ses m&#233;thodes, cela implique que chaque servlets devra &#234;tre mis a jour. Le Business Delegate permet de regrouper en un seul endroit tous les appels distants. Il faut en abuser.

    Jean Pierre

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

Discussions similaires

  1. [Débutant] Séparation d'une application Web en WARS
    Par Xavier78000 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/12/2005, 22h46
  2. [Débutant] [lomboz] EJB Session
    Par VinceFromBcn dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 19/01/2005, 19h51
  3. [Débutant] Méthode super()
    Par KooX dans le forum Langage
    Réponses: 3
    Dernier message: 07/11/2004, 21h28
  4. [EJB] [JSP] Méthode EJB non reconnue dans jsp
    Par stago dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 06/07/2004, 09h52
  5. [EJB] Débutant en EJB sur Weblogic
    Par viny dans le forum JBuilder
    Réponses: 8
    Dernier message: 24/04/2003, 15h34

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