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 :

interaction EJB avec vue/controleur


Sujet :

Java EE

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut interaction EJB avec vue/controleur
    Salut,

    Je me pose une question concernant les EJB par rapport aux JSP/Servlet.

    Dans les EJB session façade, on voit souvent, par exemple, des méthodes add(MonEJB ejb), remove(MonEJB ejb) et autres.
    N'a-t-on pas besoin de remove(int id) (où le paramètre est la primary key de MonEJB)?

    En effet, supposons une page JSP avec un formulaire qui affiche la liste des MonEJB, avec la possibilité d'en sélectionner un, pour le supprimer.

    Lorsque cette JSP passe un paramètre à la servlet contrôleur, elle lui passe l'id de MonEJB (sous forme de String), la servlet fait ainsi un maFacade.remove(Integer.parseInt(id)).

    Ne pas mettre la méthode remove(int id) obligerait à faire un findByPrimaryKey auparavant pour récupérer une instance de MonEJB, et ainsi pouvoir la supprimer...

    Est-ce que c'est correct de passer à la JSP directement les id de la base de données, ou il faut faire autrement?

    Plus généralement, comment gérer cela élégamment?

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 79
    Par défaut
    en faite la réponse se trouve dans ton post.

    tu dit ceci :
    "En effet, supposons une page JSP avec un formulaire qui affiche la liste des MonEJB"
    ici tu as donc une liste avec tous les objets ?

    et comme ton objet 'MonEJB' est identifié que par son ID, normalement c'est déclarer dans ton EntityBean.
    Si tu veux en être certain, test ceci 'MonEJB.String();' et tu vas voir qu'il retourne son ID.

    Si c'est pas ce que tu demandais, excuse moi de m'être trompé.

  3. #3
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par martel
    en faite la réponse se trouve dans ton post.

    tu dit ceci :
    "En effet, supposons une page JSP avec un formulaire qui affiche la liste des MonEJB"
    ici tu as donc une liste avec tous les objets ?
    Oui, il contient la liste des MonEJB, sous la forme par exemple List<MonEJB>.

    Citation Envoyé par martel
    et comme ton objet 'MonEJB' est identifié que par son ID, normalement c'est déclarer dans ton EntityBean.
    Ca d'accord, mais est-il possible de ne pas manipuler du tout les id mappés en base de données et d'être dans un modèle (apparent) totalement objet, n'utilisant que des références java.

    Car par exemple, le truc qui vient à l'esprit pour supprimer une liste de magasins, c'est de faire un appel à /SupprimerMagasin?ids=1,3,6,7,10. Mais côté servlet ça oblige, si on veut manipuler les objets associés, à faire un findByPrimaryKey pr les supprimer (si on n'utilise que remove(Store st) et non remove(int id).

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    Tu peux travailler dans les divers couches avec des objets différents, dans du code JSP tu peux par exemple accédé à tes ValueObject qui contiennent eux des Entity composés

    Ca complexifie le code de faire appel à du code BU (ici un session bean) que et de devoir faire une transformation de value objet à un entity alors que l id est le meme

    je sais pas si j ai été clair ...

    Exemple :

    Tu travailles dans ta couche présentation avec un valueobject composé de Person, Adress ou une personne possède une adresse. Tu proposes un service (une facade) avec les méthodes CRUD tradititionel, tu invoques donc cette méthode /ce service uniquement avec un identifiant

    Le data model ne serait pas respecté car ce que tu voudrais c'est updaté ton value object spéficique (qui est déterminé dans ton presentation layer (je déconseille mais je prend en compte ton exemple)

    Je pense pas que je sois plus clair, mais ca me parrait tellement limpide ...

  5. #5
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par *alexandre*
    Tu peux travailler dans les divers couches avec des objets différents, dans du code JSP tu peux par exemple accédé à tes ValueObject qui contiennent eux des Entity composés

    Ca complexifie le code de faire appel à du code BU (ici un session bean) que et de devoir faire une transformation de value objet à un entity alors que l id est le meme

    je sais pas si j ai été clair ...
    Je n'ai pas trop compris o_O

    Passer à partir des Servlets des Object vers la jsp, et que la jsp l'affiche, là pas de problème.

    Le problème est d'utiliser ces Object (ici mes Store) dans une liste, et pouvoir les identifier dans un formulaire, de manière indépendante avec l'id de la base de données.

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    J ai édité mais je doute que ca soit plus clair pour toi

Discussions similaires

  1. [Débutant] Modèle Vues Controleurs avec C#
    Par Awery2 dans le forum C#
    Réponses: 4
    Dernier message: 22/10/2014, 14h52
  2. [Débutant] génération d'un EJB avec GenIc
    Par Stessy dans le forum JOnAS
    Réponses: 65
    Dernier message: 31/01/2005, 10h50
  3. Réponses: 4
    Dernier message: 20/07/2004, 21h53
  4. [Ant] [Ejb] Probléme de création d'ejb avec Genic
    Par rivierem dans le forum JOnAS
    Réponses: 7
    Dernier message: 25/06/2004, 16h21
  5. [JSP][Servlet][Javabean] Modèle Vue Controleur
    Par ay_pepito dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 04/02/2004, 10h05

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