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 :

problème avec la propriété rendered


Sujet :

JSF Java

  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 49
    Points
    49
    Par défaut problème avec la propriété rendered
    Bonjour à tous,
    j'ai un petit problème avec la méthode rendered dans un formulaire. En fait j'ai un selectOneRadio qui permet de faire un choix entre 2 possibilités. En fonction du choix de l'utilisateur j'aimerais cacher ou non des inputText. Le problème c'est que ça fonctionne pas, je dois mal m'y prendre

    du coté de mon formulaire j'ai :

    <h:selectOneRadio id="typeRequete" value="#{sourcededonnees.requeteCheck}">
    <f:selectItems value="#{sourcededonnees.typeRequeteItem}" />
    </h:selectOneRadio>
    <h:outputText value="Driver Jdbc :" rendered="#{sourcededonnees.requeteCheck == 'XMLA'}" />
    <h:inputText id="driverJdbc" value="#{sourcededonnees.sourcededonnees.sourceDeDonneesdriverJdbc}" rendered="#{sourcededonnees.requeteCheck == 'XMLA'}" title="" />

    dans ma classe java j'ai les méthodes suivantes :

    private SelectItem[] typeRequeteItem = {
    new SelectItem(new String("XMLA"),"XMLA"),
    new SelectItem(new String("Mondrian"),"Mondrian")
    };

    public String getRequeteCheck() {
    return requeteCheck;
    }

    public void setRequeteCheck (String value) {
    requeteCheck = value;
    }

    public SelectItem[] getTypeRequeteItem () {
    return typeRequeteItem;
    }

    Sinon j'avais penser à mettre lors du clic sur le radio une fonction javascript.
    Mais existe il une propriété permettant de rendre un composant visible ou non ?

    Dans le dernier recours modifier la propriétés disabled de l'élément, mais bon la première solution me conviendrait le mien.

    Merci de votre aide
    @+

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Avec un ValueChangeListener sur ton <h:selectOneRadio > tu pourra effectuer du traitement lorsque l'utilisateur effectue un choix dans cet élément.

  3. #3
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 49
    Points
    49
    Par défaut
    Merci de ta réponse.
    Je voulais savoir comment on gérait le valueChangeListener ?
    Il faut l'associer à une méthode du bean ou pas ?? Ci c'est le cas je vois pas trop le corps de la méthode.

  4. #4
    Membre habitué
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Points : 186
    Points
    186
    Par défaut
    si mes souvenirs sont bons, le valueChangeLister est utilisé quand tu veux une action automatique dès le clic sur ton radio bouton.

    Tu lui mets une méthode en paramatre qui, dans ton Bean, est déclaré avec un ValueChangeEvent en paramètre. Dans le corps de cette méthode, tu t'occupes de modifier le bouléen qui est utilisé dans ton option rendered

  5. #5
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 49
    Points
    49
    Par défaut
    Ok je vais essayer,
    je te remercie pour ton aide
    heureusement qu'il y a des personnes confirmées qui prennent de leur temps pour aider les débutants.
    Merci bien
    @+

  6. #6
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 49
    Points
    49
    Par défaut
    Ca fonctionne sauf quand je rajoute les converter au champ de saisi.
    Losquu'il y a les converters, lors d'un clic sur la selectOneRadio les messages d'erreurs des converter s'affichent. Mon code est peut être pas bon.

    Voila mon code :

    du côté de ma page jsp :

    <h:outputText value="Type requete :"/>
    <h:panelGroup>
    <h:selectOneRadio id="typeRequete" value="#{sourcededonnees.requeteCheck}" valueChangeListener="#{sourcededonnees.renderedTest}" immediate="true" onclick="this.form.submit();" title="Séléctionnez le type de requête" >
    <f:selectItems value="#{sourcededonnees.typeRequeteItem}" />
    </h:selectOneRadio>
    <h:message errorStyle="color: red" for="typeRequete"/>
    </h:panelGroup>
    <h:outputText value="Driver Jdbc :" rendered="#{sourcededonnees.isRequeteXmla}"/>
    <h:panelGroup rendered="#{sourcededonnees.isRequeteXmla}" >
    <h:inputText id="driverJdbc" value="#{sourcededonnees.sourcededonnees.sourceDeDonneesdriverJdbc}" title="Saisissez le driver Jdbc" >
    <f:converter converterId="converterDriverJdbc" />
    </h:inputText>
    <h:message errorStyle="color: red" for="driverJdbc"/>
    </h:panelGroup>
    <h:outputText value="Source de données :"/>
    <h:panelGroup>
    <h:inputText id="sourceDeDonnees" value="#{sourcededonnees.sourcededonnees.sourceDeDonneessource}" title="Saisissez la source de données" >
    <f:converter converterId="converterSourceDonnees" />
    </h:inputText>
    <h:message errorStyle="color: red" for="sourceDeDonnees"/>
    </h:panelGroup>

    du côté du bean :

    private SelectItem[] typeRequeteItem = {
    new SelectItem(new String("XMLA"),"XMLA"),
    new SelectItem(new String("Mondrian"),"Mondrian")
    };

    private String requeteCheck = null;

    private boolean isRequeteXmla = true;

    public void renderedTest(ValueChangeEvent event ) {
    if ( event.getNewValue().equals("XMLA")) {
    isRequeteXmla = true;
    }
    else {
    isRequeteXmla = false;
    }
    }

    Voila merci.
    Merci pour ceux qui prennent le temps de répondre.

  7. #7
    Membre habitué
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Points : 186
    Points
    186
    Par défaut
    pour la modif dynamique de ta page c'était ok, mais pour ce qui est des converter, je n'ai absolument aucune piste à te proposer...

    Bonne recherche

  8. #8
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Peut-être voir du côté de l'attribut immediate pour sauter conversion/validation

  9. #9
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 49
    Points
    49
    Par défaut
    Tu le met à quel niveau le immediate="true" ?
    car moi je l'ai mis au niveau du selectOneRadio mais ca ne fonctionne pas !!

  10. #10
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Au niveau de ce qui provoque le submit.
    Donc je pense que j'aurai fait comme toi...

    Edit : Essaye de mettre un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick/onchange="submit()"

Discussions similaires

  1. Réponses: 12
    Dernier message: 22/10/2007, 15h47
  2. Problème avec la propriété filter
    Par Morgoth818 dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/08/2007, 21h20
  3. Problème avec la propriété "Filter" de mes DBLookupComboBox
    Par CleeM dans le forum Bases de données
    Réponses: 3
    Dernier message: 29/06/2007, 13h53
  4. [VBA_E] problème avec la propriété SelectedItem
    Par jamelie dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 17/04/2007, 06h09
  5. [Delphi 6] Problème avec la propriété Text d'un composant
    Par bionoir dans le forum Composants VCL
    Réponses: 4
    Dernier message: 08/12/2005, 11h23

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