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 :

[Facelets][passage de paramètres]no tag defined for setPropertyActionListener


Sujet :

JSF Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 97
    Points : 89
    Points
    89
    Par défaut [Facelets][passage de paramètres]no tag defined for setPropertyActionListener
    Bonjour,

    Je développe actuellement une enterprise application dont le module web app utilise JSF1.2 et les facelets.

    Voici mon petit souci :
    Je dispose d'une dataTable dans laquelle une colonne est dédiée à afficher des boutons(commandButtons) ou liens ( ou commandLinks) pour supprimer la ligne concernée (j'ai essayé avec les 2).
    Pour cela j'aimerais passer l'objet en question à la méthode qui s'occupera de la suppression via un "setPropertyActionListener".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      <h:commandLink action="#{ParentsCtrl.doRemove2}">
                             <h:outputText value="Supprimer"/>
                             <f:setPropertyActionListener value="#{Parents}" target="#{ParentsCtrl.parent}"/>
                        </h:commandLink>
    j'appelle donc par mon lien une méthode doRemove2(), qui se trouve dans mon managedbean ParentsCtrl. Ma dataTable itère sur une var="Parents"; comme vous pouvez le voir, j'aimerais donc passer l'objet courant en paramètre de ma émthode, et le stocker dans une variable "parent" située dans mon bean PArentsCtrl.

    ...J'ai déjà procédé de la sorte, quasiment la même chose mais avec un commandButton et dans des jsp et tout fonctionnait très bien.

    Mon problème se produit à l'appel de la page xhtml concernée. Mon navigateur m'affiche une erreur HTTP500 et me dit que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Exception 
     
    javax.servlet.ServletException: /facelets/parents.xhtml @86,106  Tag Library supports namespace: http://java.sun.com/jsf/core, but no tag was defined for name: setPropertyActionListener
    Cause racine 
     
    com.sun.facelets.tag.TagException: /facelets/parents.xhtml @86,106  Tag Library supports namespace: http://java.sun.com/jsf/core, but no tag was defined for name: setPropertyActionListener
    J'ai correctement défini le namespace comme il nous l'indique
    (pour info :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html">
    )
    Mais visiblement il ne reconnait pas le tag setpropertyactionListener...or Netbeans me le propose bien par autocomplétion ! J'ai un peu de mal à comprendre...

    Me suis-je planté? Y a t-il-un bug +/- connu à ce niveau...et si oui, comment faire??J'ai tenté les balises f:param mais à mon avis je m'y prends mal.

    Si quelqu'un a un exemple ou des réponses à m'apporter je suis preneur :-)

    Merci d'avance

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Salut,
    Tu es sûr que tes jars sont bien ceux d'une implémentation JSF 1.2 ? et pas plutôt 1.1 ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 97
    Points : 89
    Points
    89
    Par défaut
    Oui...je viens même de vérifier pour l'occasion car on ne sait jamais...
    mais il s'agit bien de la 1.2

    PS: j'ai suivi ton tuto sur la création de composants custom mais j'ai eu un petit souci, ...à mon avis un nouveau post risque d'apparaître très bientôt

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 84
    Points : 50
    Points
    50
    Par défaut
    Vous avez trouvé solution à votre problème ?

    J'ai le même soucis:
    j'ai déclaré:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <a4j:commandLink ajaxSingle="true" value="lien"
    		oncomplete="javascript:Richfaces.showModalPanel('editPanel',{left:'auto',top:'auto'})">
    	<f:setPropertyActionListener value="#{user}" target="??" />
    	</a4j:commandLink>



    Mon Bean s'appelle: Luser, contenant une liste d'utilisateurs.

    Ma page contient:

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <rich:dataTable value="#{Luser.LTitre}"
                var="user" rows="20" rowKeyVar="row"
                ajaxKeys="#{dataTableScrollerBean.keys}" id="table">
    ....
     
    </rich:dataTable>

    La table s'affiche correctement. Mais en voulant ajouter un lien sur les différents rows, cela est impossible.

    Comment dois-je implémenter le f:setPropertyActionListener ???
    Le target me cause problème à chaque fois.

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    et votre code ressemble à quoi au niveau du managed bean ? un param ou un attribute se gère différement ...

  6. #6
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    N'oubliez pas d'inclure la dataTable dans un <h:form/>.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    J'avais le problème.
    j'ai vu sur un post à propos de Tomahawk, que certaines versions de Facelets ne géraient qu'un seul fichier de définition des TagLib (jsf/core, en locurence).
    donc s'il y en a plusieur sur le serveur, seulement le premier est pris en compte.
    d'ou... possibilité de conflit avec différentes versions de JSF.

    bref....
    avec un upgrade de Facelet, version 1.1.15, les taglibs définitions sont bien gérés et le probleme a disparu.

    pour télécharger le fichier jsf-facelets.jar
    https://facelets.dev.java.net/servle...635&folderID=0

    Antoine Herzog
    Consultant JBoss Portal, Gatin, JSF, RichFaces, J2EE

Discussions similaires

  1. Passage de paramètre faux (#define)
    Par fishingman dans le forum Débuter
    Réponses: 8
    Dernier message: 10/10/2011, 14h24
  2. [jsf + richfaces] Exception : no tag was defined for name
    Par fisherprice dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 13/04/2010, 14h33
  3. Probleme passage de paramètres à EventListener dans boucle for
    Par bigboss87 dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 14/08/2009, 11h23
  4. tag html link et passage de paramètre à url.
    Par david06600 dans le forum Struts 1
    Réponses: 1
    Dernier message: 22/08/2006, 14h22
  5. passage en paramètre d'un array dynamique 2D
    Par Guigui_ dans le forum Langage
    Réponses: 4
    Dernier message: 27/11/2002, 19h47

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