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 :

Custom Tag personalisé avec body eval


Sujet :

Struts 1 Java

  1. #1
    Membre confirmé Avatar de wdionysos
    Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2003
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 222
    Par défaut Custom Tag personalisé avec body eval
    Bonjour à Tous !

    Voila je poste car j'ai a faire à un custom tag personalisé pour une application qui doit me renvoyer le nom d'un utilisateur en fonction de son id. ce tag s'appelle <monappli:username> et possede un seul attribut qui est userId

    Aujourd'hui ce tag fonctionnait avec ce tld :
    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
     
    <taglib>
        <tlibversion>1.0</tlibversion>
        <jspversion>1.1</jspversion>
        <shortname>monappli</shortname>
        <tag>
            <name>username</name>
           <tagclass>
                  masociete.monappli.pl.customtag.MipsUserNameTag
            </tagclass>
            <bodycontent>JSP</bodycontent>
            <attribute>
                <name>userId</name>
                <required>true</required>
                <rtexprvalue>true</rtexprvalue>
            </attribute>
        </tag>
    </taglib>
    ce tag fonctionne aujourd'hui avec ce tld mais j'ai besoin pour un nouveau cas de pourvoir insérer dans la valeur de l'attribut userId un autre tag struts de type ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    userId="<bean:write name="objet" property="user"/>"
    ...mais cela ne fonctionne plus.

    J'ai alors entrepris de modifier le tld d'une part en passant l'attribut userId a false dans le but de pouvoir ecrire quelque chose comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <monappli:username> <bean:write name="objet" property="user"/> </monappli:username>
    c'est à dire de transformer mon custom tag existant pour qu'il puisse avoir une valeur en body eval et qu'il puisse affecter celle ci à l'attribut userId.

    un extrait de la methode java associé est le suivant :
    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
     
    public int doStartTag() throws JspException {
       String userName = null;
       if (userId != null && !userId.equals("")) {
    	try{
    	     userName = monsingleton.getUserName(userId);
    	} catch (Exception e) {
    	     userName = "";
    	}
        } else {
    	userName = "";
        }
     
        try {
            pageContext.getOut().print(userName != null ? userName : "Unknown");
       } catch (IOException e) {
    	e.printStackTrace();
       }
     
       return EVAL_BODY_INCLUDE;
    }
    Quelqu'un a t-il déjà eut ce genre de problème ? quelqu'un peut t-il m'aider a resoudre ce point.

    Pour être clair je suis cette piste car il y a qq temps j'avais eut un probleme similaire avec<tiles:put> et l'avais résolu en ecrivant sous ce modèle
    <tiles:put><bean:write></tiles:put>
    Ou comment font les tags struts natif pour réaliser cette opération ?

    Merci de votre aide.

  2. #2
    Membre confirmé Avatar de wdionysos
    Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2003
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 222
    Par défaut L'odyssée d'Ulysse !
    Personne pour m'aider à écrire ce Tag

    A défaut je ne parviens pas à trouver le source de <Tiles:put> , quelqu'un peut-il me montrer une voie, Quel routeur dois-je suivre etc...

    Merci bien

    wDionysos

  3. #3
    Membre confirmé Avatar de wdionysos
    Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2003
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 222
    Par défaut
    Bonjour a tous,

    Toujours irrésolu : Ai lu pas moins de trois livres spé. et aucune réponse j'ai fini par faire une grosse bidouille comme d'hab...

    Navré que ce sujet ne vous ai pas inspiré,

    Promi je ne le referai plus, je suis toujours amateur pour une réponse mais vais clore ce sujet par égard pour les forums...

    A bientôt

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

Discussions similaires

  1. [Custom Tags] Problème de chargement d'un tag personalisé
    Par adrien.nicolet dans le forum Taglibs
    Réponses: 2
    Dernier message: 04/01/2007, 11h42
  2. [XSD]Tags personalisés avec XML Schemas
    Par ploxien dans le forum Valider
    Réponses: 3
    Dernier message: 21/09/2006, 14h40
  3. Tag : present avec des roles multiples
    Par zola dans le forum Struts 1
    Réponses: 4
    Dernier message: 28/04/2006, 18h01
  4. [CSS] remplacement de tags html avec css
    Par wtfu dans le forum Mise en page CSS
    Réponses: 13
    Dernier message: 28/02/2006, 15h44
  5. probleme avec un eval
    Par ciesco dans le forum Langage
    Réponses: 3
    Dernier message: 11/01/2006, 11h21

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