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 :

Structure et packages d'un nouveau projet jsf


Sujet :

JSF Java

  1. #1
    Membre éclairé Avatar de dgouyette
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 75
    Par défaut Structure et packages d'un nouveau projet jsf
    Bonjour,

    je suis un dev J2EE qui débute sur la technologie jsf.

    J'ai commencé à me documenter à droite et à gauche afin de voir un peu comment s'organise un projet jsf, je suis plus habitué à la structure d'un projet java, Spring, hibernate.

    Avez vous une structure à me recommander, je sais que jsf est MVC, mais je vois pas trop comment s'organise, servlet, bean, managedBean et backedBean dans tout ca. Le mieux serait une petite webapp vide.

    J'ai regardé les war appfuse, mais je n'ai pas vu ce genre de structure.

    Pensez vous que partir sur richFaces est une erreur ?


    Edit : je viens de trouver cette url proposant une structure sympa, qu'en pensez vous ?

    http://cagataycivici.wordpress.com/2...age-jsf-beans/

    Merci d'avance de vos réponses

  2. #2
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bonjour.
    Une application JSF est avant tout une application web Java ce qui définit déjà les grandes lignes de l'architecture: dossier de l'application, un sous dossier WEB-INF contenant les fichiers de configuration, les librairies et les classes du projet, etc.
    Le mieux sera de passer par un IDE comme eclipse avec WebTools ou encore Netbeans qui génèrent la squelette vide de l'application.
    J'ai réalisé 2 petites démos sur comment configurer eclipse web tools et comment créer un projet JSF que tu peux consulter ici.

    En ce qui concerne le MVC, les vues seront les pages JSF dans le dossier WebContent, les contrôleurs sont les backing-beans ou managed-beans qui sont des POJOs ordinaires (que tu peux grouper dans un package control et le model est du java pur et dur (indépendamment de JSF) que tu peux grouper dans des packages model.service, model.dto.model.dao, etc.)

    Spring peu facilement être integré dans la chose surtout pour gérer la couche persistence (JPA, Hibernate, etc.) ou optionellement pour gérer les managed beans de JSF.
    J'ai posté quelques billets à ce sujet dans mon blog.

    Enfin, Richfaces peut être utilisé pour egayer un peu la chose et l'ajaxifier, mais je crois que ça peut attendre d'avoir les bases de JSF avant.

    Bonne chance.

  3. #3
    Membre éclairé Avatar de dgouyette
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 75
    Par défaut
    Merci de ta réponse qui m'aide un peu à m'éclaircir les idées.

    Ce que tu appelles les backedBeans c'est un peu ce que j'appelle (peut etre à tord) les services, ce sont eux qui font des appels à la DAO, non ?

    Mon souhait est de rendre disponibles ces services via Xfire en webservice, ca te semble correct ?

    Je vais essayer des démos de ce pas.

  4. #4
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bonjour.
    Non, les backed-beans (managed-beans) dorment la couche contrôle dans JSF.
    Ils peuvet à la limite faire appel aux DAOs si on est dans un tout petit projet, mais c'est pas bien vu. C'est là qu'intervient la couche service entre les controllers et les DAOs.

    Et jsutement, de cette façon, tu peux exposer cette couche via WS avec Xfire et cie.

  5. #5
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Pas exactement (edit: le pas exactement n'est pas pour la réponse de djo.mos, mais pour le message de cestpasdur)

    Les backed beans sont des beans Java ("bête" classe Java avec des getters et setters sur ses propriétés) qui sont utilisés pour "gérer" la vue et les informations qui y sont liés.
    Le bean va par exemple gérer ce qui doit être fait quand l'utilisateur clique sur un bouton, qu'il choisit une valeur dans une combobox, il va aussi "produire" les valeurs à placer dans une datatable, une liste, etc.

    Ces beans font appel aux services pour obtenir des... euh services de la part de l'application, eux mêmes faisant appel aux DAO pour accéder à la Base de données.

    Ce sujet a déjà été abordé plusieurs fois dans ce forum. Tu peux jeter un oeil ici sur l'une des dernières discussions sur le sujet par exemple.
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  6. #6
    Membre éclairé Avatar de dgouyette
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 75
    Par défaut
    Je viens de lire le post indiqué, mais ça n'est pas encore limpide pour moi.

    Ci dessous ce que je pense avoir compris.

    Le backedBean est comme un controlleur.

    Il possède en attribut un ou plusieurs beans obtenu ou mis à jour via des services, en gros le modèle renvoyé à la view

    Le controller frontal, qui est le point d'entrée de l'application effectue des appels sur les différentes méthodes de ce backedBean, une partie des méthodes faisant des appels de services et l'autre partie étant juste des accesseurs sur les beans composant ce backedBean.

    C'est çà ?

    Personne n'a fait de digramme de séquence pour décrire ce mécanisme ?

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/06/2014, 13h10
  2. [MFC]creation nouveau projet
    Par tus01 dans le forum MFC
    Réponses: 10
    Dernier message: 05/01/2006, 16h37
  3. [Package]Organisation d'un projet
    Par willowII dans le forum Langage
    Réponses: 7
    Dernier message: 23/10/2005, 11h44
  4. [J2EE]importation d'un war pour un nouveau projet
    Par gibson83 dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 14/02/2005, 12h58
  5. [Création nouveau projet] - Référencer un autre projet
    Par TexAvery dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 17/08/2004, 12h55

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