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 :

[Architecture] navigation-rule pour un a4j:include


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 42
    Par défaut [Architecture] navigation-rule pour un a4j:include
    Bonjour,

    Je connais la puissance des navigation-rule de JSF mais j'ai quand même une petite question à ce sujet.

    a) Organisation Graphiquement
    Je suis en train de faire un nouveau projet.
    Voici graphiquement l'organisation de l'écran:

    ----------------------------------------------------
    |00000000000000000000000000000000000000000000|
    |00000000000000000000000000000000000000000000|
    ----------------------------------------------------
    |aaaaaaaaaa|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    |aaaaaaaaaa|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    -------------|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    |bbbbbbbbbb|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    |bbbbbbbbbb|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    -------------|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    |cccccccccc|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    |cccccccccc|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
    ----------------------------------------------------

    0 : Animation flash (logo)
    a : bouton 1
    b : bouton 2
    c : bouton 3
    x : contenu

    b) Organisation des sources
    Je souhaite organiser mes sources de cette manière :

    /WebContent/index.faces
    /WebContent/pages/contenta.faces
    /WebContent/pages/contentb.faces
    /WebContent/pages/contentb.faces

    c) Design de index.faces
    Mon index.faces utilisera un css bien organiser (comme cité ci-dessus) et dans la partie "content", j'utilise ce code pour afficher le premier contenu "/WebContent/pages/contenta.faces"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a4j:include id="includedContentView" viewId="pages/contenta.faces"></a4j:include>
    d) Ma question
    Est-il possible d'utiliser les navigation-rule pour rafraichir/changer la partie "content" sans pour autant recharger toute ma page ?

    Par exemple, lorsque je clic sur le bouton b, j'ai la source pages/contentb.faces qui s'affiche.

    D'avance merci à ceux qui répondront

  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
    Par défaut
    La solution pour n'est pas les navigations rules, mais, Facelets qui gere le template de page. si tu veux rafraichir une partie de la page tu peux utiliser le reRender des composants Richfaces.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 42
    Par défaut
    Merci pour la réponse Sniper37.

    Donc cela veux dire que je devrai avoir un bean ayant un attribut "pageName" qui sera initialiser par defaut "pages/contenta.faces" ensuite si je veux changer de page il faudra alors que je "set" ce champ avec un autre nom de page (pe : "pages/contentb.faces") et pour finir faire un reRender du composant ...

    Comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a4j:include id="includedContentView" viewId="#{pageBean.pageName}"></a4j:include>
    J'avais déjà penser à cette solution mais n'y a t'il pas moyen de faire cette navigation autrement avec JSF ?

  4. #4
    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
    Par défaut
    Ce n'est pas de la navigation, tu peux considérer ça comme une seule page avec plusieurs blocs, et tu fera la mise à jour du bloque que tu veux, ça n'a rien à voir avec le bean, le bean tu peux l'utiliser partout.
    Il suffit dans l'un de tes blocs tu as

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a4j:outputPanel id="panel" >
    xxx
    </a4j:outputPanel>
    et dans un autre bloc:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a4j:commandButton reRender="panel" />
    avec la navigation, tu n'a pas besoin de mis à jour partiel de la page, toute la page sera rafraichie.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 42
    Par défaut
    Ok merci pour ta rapidité et à la qualité de tes infos :-)

Discussions similaires

  1. Navigation Rule pour une page à une autre
    Par maserati dans le forum JSF
    Réponses: 0
    Dernier message: 09/01/2012, 11h40
  2. navigation-rule sur l'ensemble des pages
    Par laurent.c123 dans le forum JSF
    Réponses: 9
    Dernier message: 09/02/2009, 00h11
  3. ajax4jsf: problème avec <a4j:include>
    Par heureuxLesOublieux dans le forum JSF
    Réponses: 3
    Dernier message: 18/06/2007, 10h30
  4. [c++]Architecture des classes pour un jeu
    Par Pegasus32 dans le forum C++
    Réponses: 23
    Dernier message: 16/02/2005, 14h07
  5. [architecture] isapi_redirect.dll pour IIS et Tomcat
    Par tscoops dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 01/02/2005, 11h53

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