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 :

[RichFaces]panelMenu se referme à chaque page


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de maVariable
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 164
    Par défaut [RichFaces]panelMenu se referme à chaque page
    Hello,

    J'ai un petit souci d'enchainement des pages avec un menu de type RichFaces:panelMenu et les tag associés.

    -manipulation/ouverture/fermeture/clique : ok
    -ouverture de la nouvelle page, en relation avec un <h:commandLink> + les navigation rules : ok
    -mais une fois sur la nouvelle page : le menu s'est refermé. dommage...

    Le menu se trouve dans un template (header + menu à gauche)

    extrait du template :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <r:panelMenu mode="ajax" iconExpandedGroup="disc"
    		iconCollapsedGroup="disc" iconExpandedTopGroup="chevronUp"
    		iconGroupTopPosition="right" iconCollapsedTopGroup="chevronDown">
    		<r:panelMenuGroup label="Welcome">
    			<r:panelMenuItem>
    				<h:commandLink id="cmdIndex" value="Index" action="Index" style="color: black" />
    			</r:panelMenuItem>
    .....
    Toutes mes pages JSF (enfin .jsp) inclusent le template, dans une <div>.

    extrait d'une page JSF
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    .....
    <body>
    	<div id="conteneur">
    	<%@ include file="../../pagesJSP/temp.jsp"  %>
    	<div id="droite">
                          <h:form id="form">
    .....
    Les navigations rules (utilisée grace aux clicks sur les <commandLink>) me redirigent vers ces pages.

    extrait de faces-config
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    .....
    <navigation-rule>
        	<navigation-case>
                <from-outcome>Index</from-outcome>
                <to-view-id>/JSP/welcome/index.jsp</to-view-id>
                <redirect/>
            </navigation-case>
    .....
    nb : avec ou sans <redirect/> = ca ne change rien

    A chaque changement, je dois rouvrir tout mon menu.... Auriez vous une idée pour arranger ca svp ?

  2. #2
    Membre éclairé
    Homme Profil pro
    et autre ;)
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : et autre ;)
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Par défaut
    Je suis confronté également au même problème actuellement, si y'a une solution, je suis preneur !

    Je m'étais demandé recemment si il n'y avait pas possibilité via ajax d'inclure le bon contenu au clic sur le lien, ce qui ferait que la page n'a plus a se recharger et donc le panelMenu ne se refermerais plus.

    Jme replonge dedans demain

  3. #3
    Membre confirmé Avatar de maVariable
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 164
    Par défaut
    J'avais essayé de faire un truc similaire auparavant, mais sans Ajax. En fait j'avais inversé les inlcusion = le template était la fenetre prinicpale, les auters pages étaient incluses dans le template.

    l'inclusion était un truc comme include={#une variable}, et je faisais changer la variable en cliquant sur les liens. Ca regénérait la page, et ca marchait.

    Mais au final, trop de problèmes à gérer :
    - temps de chargements aléatoires
    - pas d'utilisation des navigations rules = maintenance aie aie aie
    - pas d'utilisation possible de la sécurité de JSF + serveur (security-constraint) =
    - dédoublement incontrlé des include (parfois deux ou trois fois la même page, l'une en dessous de l'autre) =
    -etc ...

    Bref, je te déconseil ce genre de solution, en tout cas avec des includes. Ca correspond à réinventer la roue... en plus carrée...

    Mais je n'avais pas essayé en y ajoutant de l'ajax, donc à toi de voir...

    Sinon, pour mon problème, je n'ai toujours pas trouvé de solution de mon coté

  4. #4
    Invité de passage
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1
    Par défaut
    Facile

    l'astuce consiste simplement à utiliser l'attribut value du (ou des) panelMenuGroup en le mappant à un l'attribut d'un bean de porteé session. On est alors capable de restituer le menu dans l'état où il était au moment du post.

    On peut utiliser un tableau de boolean, mais le top reste une Map(<String>,<Boolean>), ce qui permet d'écrire quelque chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <r:panelMenu mode="ajax" ... 
    	value="#{monBeanSession.etatMenu('Menu1')}">
    		<r:panelMenuGroup label="Welcome" 
    		value="#{monBeanSession.etatMenu('Welcome')}">
    			<r:panelMenuItem>
    				<h:commandLink id="cmdIndex" value="Index" action="Index" style="color: black" />
    			</r:panelMenuItem>
    .....
    sans oublier de mettre tout ca dans un formulaire (si on veut avoir une chance que ca fonctionne).

  5. #5
    Membre confirmé Avatar de maVariable
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 164
    Par défaut
    merci pour ta réponse,

    je vais essayer ca

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 72
    Par défaut
    Bonjour,

    J'ai une question sur ce post, avec les actions, tu as bien la redirection sur les pages voulues depuis ton menu ?

    Car j'ai de la meme manière créée un menu général, le problème c'est qu'il ne semble pas prendre en compte les chemins que je lui indique dans le faces config.

    Pourrais tu me montrer ton faces config ?

    Ton chemin "web/JSP/index.jsp" , c'est le dossier où sont toutes tes pages ??

Discussions similaires

  1. Réponses: 5
    Dernier message: 20/07/2011, 17h03
  2. Réponses: 0
    Dernier message: 02/02/2010, 10h16
  3. Réponses: 1
    Dernier message: 14/06/2008, 14h05
  4. [débutant] Même partie de page dans chaque page
    Par ShinJava dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 10/12/2004, 15h02
  5. [CR] Entête de tableau à chaque page, et tableau...
    Par titelle dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 15/04/2004, 09h13

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