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 (Web app) Best Practices - Utilisation des objets métiers dans la couche WEB


Sujet :

JSF Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 9
    Points : 10
    Points
    10
    Par défaut JSF (Web app) Best Practices - Utilisation des objets métiers dans la couche WEB
    Bonjour,

    J'aimerai savoir si l'utilisation des objets métiers dans la couche WEB (JSF) est une BEST PRACTICES. En fait, avec le framework Struts, l'utilisation des ActionForm impose un découpage entre les données de formulaire, et les objets métiers. Avec JSF, cela est moins évident, on utilise les objets métiers directement dans la couche web dans les managed beans pour récupérer les données du formulaire.

    Faut-il utiliser des objets spécifiques pour la couche web au risque de dupliquer souvent les beans métiers, et les beans de la couche web car les propriétés sont souvent les mêmes ?

    De plus, on utilisant des objets propres à la vue (couche web), on a une recopie des informations entres les objets métiers et ceux de la vue. Ce qui provoque un coût supplémentaire.

    Pouvez-vous me donner vos avis ?

  2. #2
    Membre expérimenté Avatar de slim
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2002
    Messages
    938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2002
    Messages : 938
    Points : 1 337
    Points
    1 337
    Par défaut
    Bonjour,

    L'utilisation dans la couche web des objets définis dans la couche DAO (entités) ne me choque pas. C'est l'implémentation des règles métier qui ne doit pas être faite dans la couche de présentation.

    Si l'objet que tu veux présenter sur l'UI contient exactement les mêmes propriétés, tu peux parfaitement utiliser l'entité de la couche DAO sans modification de sa structure.
    Quand on crée des classes pour la couche web qui sont la copie conforme des entités de la couche DAO, cela nécessite souvent une copie pour chaque opération sur ces objets (conversion, copie, etc.), alors que l'on peut très bien s'en passer.

    Par contre, si c'est un objet métier avec des propriétés de plusieurs entités, alors oui, il vaut mieux créer un objet métier dans la couche web.
    Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
    et n'oubliez pas de lire les FAQ !
    FAQ Java et les cours et tutoriels Java
    Doc JAVA officielle
    AngularJS 1.x
    Angular 2

    Do it simple... and RTFM !

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/03/2009, 15h32
  2. Utilisation des objets déclarés dans un repeater
    Par grosdave653 dans le forum Flex
    Réponses: 1
    Dernier message: 13/08/2007, 10h13
  3. Utiliser des objets automation dans Oracle
    Par WebPac dans le forum Forms
    Réponses: 10
    Dernier message: 29/11/2006, 19h17
  4. Utiliser des objets SWING dans une vue RCP
    Par manuga72 dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 20/10/2006, 17h26
  5. Réponses: 5
    Dernier message: 22/08/2005, 16h48

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