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 :

Affichage conditionnel d'un formulaire


Sujet :

JSF Java

  1. #1
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut Affichage conditionnel d'un formulaire
    J'ai une page de recherche à 2 colonnes, les 2 colonnes etant des fichiers xhtml séparés.
    Pour l'instant en actionnant la recherche à gauche, j'ai bien les resultats à droite.
    On me demande d'afficher une page vierge (donc pas de formulaire) à droite si aucun résultat (ce qui est logique).
    J'ai essayé d'utiliser l'attribut rendered dans le formulaire, attribut mappé sur un boolean dans mon bean, ça marchouille sauf que l'affichage n'est pas instantané, il faut faire un refresh de la page pour que ce soit pris en compte,Or je voulais que le simple submit de la recherche suffise.
    Code de l'entête du formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:form id="idForm" rendered="#{monBean.backEndBean.isColonneActive}">
    j'espère avoir été clair.
    Une idée sur ce qu'il faut faire??
    Merci d'avance...
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  2. #2
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240
    Par défaut
    tu modifies ton isColonneActive dans l'action du submit ? Quel est le scope de monBean?

  3. #3
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    je l'ai mis en session, j'avais pas trop le choix.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tu modifies ton isColonneActive dans l'action du submit
    Je pige pas trop, voila l'action qui fait la recherche:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a4j:commandLink action="#{monBean.search}" id="submit" reRender="idForm" requestDelay="500" oncomplete="#{facesContext.maximumSeverity == null ? 'Richfaces.hideModalPanel(\'panel_update_jeune\');' : 'Richfaces.showModalPanel(\'panel_update_jeune\');'}">
    					  		  	value="Valider"
    					  		 </a4j:commandLink>
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  4. #4
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240
    Par défaut
    Essaye un code du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <h:form id="idForm">
    <a4j:outputPanel rendered="#{bean.rendered}">
    ...
    <a4j:commandLink action="#{bean.action}" reRender="idForm" value="ok" />
    </a4j:outputPanel>
    </h:form>

  5. #5
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Ca change rien,il faut tjrs que j'affiche un refresh de la page pour que le boolean soit pris en compte...
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  6. #6
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240
    Par défaut
    bizarre j'ai un code similaire chez moi et ça fonctionne.

  7. #7
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Je resitue le contexte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    J'ai une page de recherche à 2 colonnes, les 2 colonnes etant des fichiers xhtml séparés.
    Pour l'instant en actionnant la recherche à gauche, j'ai bien les resultats à droite.
    On me demande d'afficher une page vierge (donc pas de formulaire) à droite si aucun résultat (ce qui est logique).
    J'ai essayé d'utiliser l'attribut rendered dans le formulaire, attribut mappé sur un boolean dans mon bean, ça marchouille sauf que l'affichage n'est pas instantané, il faut faire un refresh de la page pour que ce soit pris en compte,Or je voulais que le simple submit de la recherche suffise.
    Code de l'entête du formulaire
    Je crois que c'est peut être parceque le lien surlequel on clique pour la recherche (colonne gauche) et le resultat (colonne droite) ne sont pas dans un meme fichier, j'utilise un template qui inclut les 2 fichiers, c'est juste une hypothese, j'en sais rien, mon bean gérant ces 2 pages est bien en session.
    Je pige rien, un seul clic passe bien ma methode recherche et met à jour mon arraylist de bean à afficher, en meme temps le boolean rendered mais seul l'arraylist est pris en compte.

    dsl pour la longueur du post, mais j'essaie de bien clarifier l'incomprehension.
    Je continue de chercher.
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  8. #8
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240
    Par défaut
    effectivement j'avais zappé que tes formulaires etaient dans 2 pages différentes.

    Ceci dit le cas que tu décris fonctionne chez moi : depuis un formulaire f1, je peux "faire disparaitre" un formulaire f2 situé dans une autre page incluse par un template facelets.

  9. #9
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Mes 2 formulaires sont dans 2 pages differents mais tous 2 inclus dans le même template, donc du clic de la gauche vers la page de droite je ne change pas de page conteneur, ni de bean de gestion, je crois que ca ressemble à ton contexte à toi, non ?
    Ma datatable du formulaire résultat est très bien rafraichi, c'est l'attribut rendered qui qui se met bien à jour coté java, mais JSF qui gère pas bian la suite...
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  10. #10
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240
    Par défaut
    si ta datatable est correctement rafraichie et que ton attribut est bien mis à jour, y'a pas de raison que le rendered ne fonctionne pas.
    En utilisant l'attribut rendered de h:form ça ne fonctionne effectivement pas chez moi (pourquoi je sais pas), par contre avec les outputPanel (le code que j'ai donné plus haut) y'a pas de soucis.

  11. #11
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Je viens de reessayer, je croyais que c'etait un pb de bean en session, je mets/enleve mon bean de la session, c idem.
    Pas de bol pour moi alors ,
    Quand changes tu ton renderer et comment le rafraichis tu?
    ton bean est il en scope session/request ?
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  12. #12
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240
    Par défaut
    Je mets à jour mon rendered dans l'action du commandLink. Bean en scope request.
    Mais je pense pas que ce soit un problème de scope, si tu essayes d'afficher la valeur du rendered dans la page, il est bien à false ?
    T'as essayé un a4j:log pour voir si y'a des erreurs ?

  13. #13
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Non j'ai pas essayé, je sais pas comment s'utiliste ce composant, t'as un exemple d'utilisation ?
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  14. #14
    Membre actif Avatar de rushtakn
    Inscrit en
    Mai 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 213
    Points : 240
    Points
    240

  15. #15
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Ok merci je vais voir comment ca marche.
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

Discussions similaires

  1. [CS3] Affichage conditionnel du formulaire de connexion
    Par HAbroc dans le forum Dreamweaver
    Réponses: 2
    Dernier message: 08/09/2009, 06h12
  2. Formulaire: affichage conditionnel d´un input
    Par audklie2 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 04/02/2009, 17h03
  3. Affichage conditionnel dans un formulaire
    Par EIN-LESER dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/01/2009, 13h22
  4. [DOM] Formulaire dynamique : affichage conditionnel de champs
    Par Flackou dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 21/08/2008, 21h47
  5. formulaire/sous-formulaire - affichage conditionnel
    Par clonezoë dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/03/2008, 18h56

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