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

Struts 1 Java Discussion :

[struts][html:link] comment rajouter un attribut id ?


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Gromitou
    Profil pro
    Inscrit en
    Février 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Février 2003
    Messages : 98
    Par défaut [struts][html:link] comment rajouter un attribut id ?
    Bonjour a tous,

    Je cherche a modifier un lien généré par struts de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="/monUrl">supprimer</a>
    à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a id="monId" href="/monUrl">supprimer</a>
    le code struts actuel étant (au sein d'une balise iterate):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html:link action="/supprimer" paramId="Id" paramName="name" paramProperty="Id">
       <bean:message key="page.supprimer"/>
    </html:link>
    De façon a pouvoir différencier 2 liens ayant le même label.

    Des idées ?

  2. #2
    zev
    zev est déconnecté
    Membre expérimenté
    Inscrit en
    Octobre 2004
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 204
    Par défaut
    C'est pas plutot styleId ?

    styleId : Identifier to be assigned to this HTML element (renders an "id" attribute).

    http://struts.apache.org/struts-tagl...doc/index.html

  3. #3
    Membre confirmé Avatar de Gromitou
    Profil pro
    Inscrit en
    Février 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Février 2003
    Messages : 98
    Par défaut
    Super Zev, c'est bien ce que je cherchais, merci beaucoup.

    En revanche j'ai un dernier soucis sur ce bout de code : le remplissage du parametre "styleId". Je fais maintenant ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html:link styleId='truc' action="/supprimer" paramId="Id" paramName="name" paramProperty="Id">
       <bean:message key="page.supprimer"/>
    </html:link>

    En effet quoique je mette a la place de truc, il me l'ecrit tel quel, je veux dire si je passe par un define par exemple, il n'ecrit pas le contenu de ma variable ("valeurTruc" par exemple) mais le nom de ma variable ("truc" donc).

    En particulier, ici j'aimerais mettre une chaine de caractere concaténée avec la valeur de "Id". Un petit tuyau ?

    Et merci encore.

  4. #4
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Essaie en utilisant les EL.
    Regarde les conditions pour pouvoir les utiliser en fonction de la version de J2EE que tu as ici.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <c:set var="test" value="truc${Id}"/>
    <html:link styleId="${test} action="/supprimer" paramId="Id" paramName="name" paramProperty="Id">

  5. #5
    Membre confirmé Avatar de Gromitou
    Profil pro
    Inscrit en
    Février 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Février 2003
    Messages : 98
    Par défaut
    Malheureusement le projet est en J2EE 1.3, donc a priori pas compatible avec les EL.

    Merci pour le tuyau, je poursuis la recherche d'une solution.

  6. #6
    zev
    zev est déconnecté
    Membre expérimenté
    Inscrit en
    Octobre 2004
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 204
    Par défaut
    Sinon tu passes truc en bean :

    dans la servlet / l'action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    req.setAttribute("truc",truc);
    Et dans la jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <jsp:useBean id="truc" 	scope="request" type="java.lang.String"/>
     
    ...
     
    <html:link styleId="<%=truc%> action="/supprimer" paramId="Id" paramName="name" paramProperty="Id">
       <bean:message key="page.supprimer"/>
    </html:link>

  7. #7
    Membre confirmé Avatar de Gromitou
    Profil pro
    Inscrit en
    Février 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Février 2003
    Messages : 98
    Par défaut
    Ok, j'avance vers la solution (j'espere !!!) et c'est grace a vous, merci.

    Je me suis inspiré de ta derniere suggestion de Zev (parceque forcément mon code n'est pas si simple et donc je n'ai pas pu appliquer l'idée telle quelle) pour arriver a ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <logic:iterate id="truc" name="listeDeTruc">
     
    <jsp:useBean id="listeDeTruc" scope="request" type="java.util.ArrayList"/>
     
    ...
     
    <html:link styleId="<%=((mon.package.Truc)listeDeTruc.get(0)).getTrucId().toString()%>" action="/supprimerTruc" paramId="trucId" paramName="truc" paramProperty="trucId">
       <bean:message key="page.listeDeTruc.supprimer"/>
    </html:link>
     
    </logic:iterate>
    Et donc là mon premier probleme est que je fais un ".get(0)" pour tester (et ça marche bien) mais j'aimerais (forcément) faire un ".get(i)".

    Mais comment récupérer un indice de boucle dans ce cas la ?

    Deuxiemement, j'ai l'impression que c'est pas super propre, ou ça vient de moi ?

  8. #8
    Membre confirmé Avatar de Gromitou
    Profil pro
    Inscrit en
    Février 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Février 2003
    Messages : 98
    Par défaut
    Bon, voila, avec un peu d'aide, j'ai mis en place un truc qui tourne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ... styleId="<%=((mon.package.Truc)pageContext.findAttribute("truc")).getTrucId().toString()%>" action="...
    sans jsp:usebean finalement.

    Et là j'ai mon id qui va bien dans la balise link avec l'id de l'objet voulu.

    Par contre j'utilise du code java dans ma jsp, et c'était ce que je voulais éviter

    Si quelqu'un a une solution plus propre, je suis preneur.

    Merci pour les coups de main Zev et c_nvy !

  9. #9
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Alors là, bravo. Moi, je n'aurais pas trouvé.
    Faut dire que je n'utilise plus du tout les scriptlets car je bosse en J2EE 1.4.
    Je ne pense pas qu'il y ait de solution plus propre en J2EE 1.3 mais je peux me tromper.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/06/2010, 11h08
  2. [ JSP ] [ STRUTS ] <html:link> et <c:import>
    Par Houbbba dans le forum Struts 1
    Réponses: 7
    Dernier message: 27/04/2006, 14h13
  3. [struts][html:link] récuperer la valeur d'un attribut
    Par jamal_b dans le forum Struts 1
    Réponses: 5
    Dernier message: 07/04/2006, 18h38
  4. [Struts] html:link et passage de paramètres
    Par nikalkal dans le forum Struts 1
    Réponses: 9
    Dernier message: 09/02/2006, 21h34
  5. Réponses: 10
    Dernier message: 27/08/2004, 11h55

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