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 déclenchement d'une action dans les colonnes d'un datatable


Sujet :

JSF Java

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 110
    Points : 59
    Points
    59
    Par défaut Problème déclenchement d'une action dans les colonnes d'un datatable
    Bonjour,

    Je manipule un datatable qui affiche la liste des technologies. je veut que lorsque je choisit une technologie de la datatable on me redirige vers une autre page qui permet de modifier la technologie , alors j'ai définit une méthode "doShowTechnologie" dans le managed bean qui permet de faire ca.
    Mon problème est que l'action du "commandLink" ne se déclenche pas lorsque je choisit la technologie. J'ai mit le même commandLink en dehors du datatable et même sur le header et ca fonctionne corectement donc le probleme n'est pas de l'action mais de son emplacement à l'interieur des colonnes du datatable.

    Voila un bout de mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     <h:column>
     <f:facet name="header"><h:outputText value="Libellé" /></f:facet>
     
     <h:commandLink  action="#{technologieMB.doShowTechnologie}">
     
     <h:outputText value="#{technologie.description}"></h:outputText>
     
     <f:param name="technologieId" value="#{technologie.notechnologie}"/>
     
     </h:commandLink>
     
    </h:column>

  2. #2
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <h:commandLink value="#{technologie.description}"  action="#{technologieMB.doShowTechnologie}">
     
     <f:param name="technologieId" value="#{technologie.notechnologie}"/>
     
     </h:commandLink>
    C'est mieux?

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 110
    Points : 59
    Points
    59
    Par défaut
    Citation Envoyé par _skip Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <h:commandLink value="#{technologie.description}"  action="#{technologieMB.doShowTechnologie}">
     
     <f:param name="technologieId" value="#{technologie.notechnologie}"/>
     
     </h:commandLink>
    C'est mieux?
    Non, toujours le même problème l'action du commandLink ne se déclenche pas.

  4. #4
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Ce genre de code marche parfaitement chez moi (iCEfaces)
    Si tu emploies un actionlistener, il se déclenche?

  5. #5
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 110
    Points : 59
    Points
    59
    Par défaut
    Citation Envoyé par _skip Voir le message
    Ce genre de code marche parfaitement chez moi (iCEfaces)
    Si tu emploies un actionlistener, il se déclenche?
    Meme problème avec un actionlistener.

  6. #6
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 110
    Points : 59
    Points
    59
    Par défaut
    Voila le code de mon DataTable :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    <h:form>
    <h:dataTable id="tableauListeAdmin" rows="5"  border="1"  value="#{technologieMB.technologies}" var="technologie"  cellspacing="1" cellpadding="1"  headerClass="headerTechnologie" width="340"  rowClasses="lignegris2,ligneblanc2,lignegris2,ligneblanc2,lignegris2" columnClasses="technologiecolonne1,technologiecolonne1,technologiecolonne2" >
     
                <h:column>
    	       <f:facet name="header"><h:outputText value="Libellé" /></f:facet> 
    		 <h:commandLink type="submit" value="#{technologie.description}"  action="#{technologieMB.doShowTechnologie}" > 
    		 <f:param name="technologieId" value="#{technologie.notechnologie}"/>
    	 	 </h:commandLink>
                 </h:column>
     
     
    	     <h:column >
    	     <f:facet name="header"><h:outputText value="" /></f:facet> 
                    <h:commandLink action="#{technologieMB.doShowTechnologie}">
                    <h:graphicImage  value="../images/modifier.gif" />   
                    <f:param name="technologieId" value="#{technologie.notechnologie}"/>
                    </h:commandLink>  
       	     </h:column>
     
    	</h:dataTable>
    </h:form>
    Le problème que lorsque je copie le contenu du commandLink dans un autre emplacement en dehors des colonnes du datatable ( dans le header par exemple ) : l'action se déclenche.... Je comprend pas pourquoi ca marche pas dans les lignes du datatable...

  7. #7
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Mais tu as quand même un postback serveur ou ça ne réagit pas du tout?
    Si tu as un postback, c'est peut être du a une exception qui se déclenche quelque part.
    Tout ce que je peux te dire, c'est qu'un code comme celui que j'ai posté fonctionne (sauf que j'utilise un actionListener pour récupérer les paramètres, puis un action pour exécuter l'action correspondante.)

  8. #8
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 110
    Points : 59
    Points
    59
    Par défaut
    Citation Envoyé par _skip Voir le message
    Mais tu as quand même un postback serveur ou ça ne réagit pas du tout?
    Si tu as un postback, c'est peut être du a une exception qui se déclenche quelque part.
    Tout ce que je peux te dire, c'est qu'un code comme celui que j'ai posté fonctionne (sauf que j'utilise un actionListener pour récupérer les paramètres, puis un action pour exécuter l'action correspondante.)
    ça ne réagit pas .... pas de postback

  9. #9
    Membre du Club
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    110
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 110
    Points : 59
    Points
    59
    Par défaut
    Enfin c'est résolu , le problème disparait en changeant le scope de mon managed bean de "request" à " session " .

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/07/2009, 20h43
  2. [Struts] - Déclenchement d'une action dans un formulaire imbriqué
    Par Dabat dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 19/03/2009, 15h14
  3. Réponses: 0
    Dernier message: 19/03/2009, 14h44
  4. Réponses: 3
    Dernier message: 18/05/2007, 16h03
  5. Réponses: 1
    Dernier message: 29/08/2004, 19h45

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