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 + JSTL et Tag non terminé


Sujet :

Struts 1 Java

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

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

    Informations forums :
    Inscription : Janvier 2008
    Messages : 94
    Points : 117
    Points
    117
    Par défaut Struts + JSTL et Tag non terminé
    bonjour,

    je voudrai passer un attribut via champ cacher dans un formulaire struts, et pour cela j'ai fait comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <html:form action="/monaction" >
       <label for="libelle"> Libellé </label> <html:text property="libelle"   />
       
     <html:submit value="Modifier"   style="width:100px;"  property="operation" />
    <html:hidden property="id"  value="<c:out value="${ID}"  />" />
    
    
    <html:submit value="Ajouter"   style="width:100px;"  property="operation"    />
    
     
    </html:form>

    mais j'obtient l'erreur suivante :

    org.apache.jasper.JasperException: /vues/monpage.jsp(36,49) Tag &lt;html:hidden non terminé
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:132)
    vraiment je ne trouve aucune explication de cette erreur car comme vous voyez j'ai bien fermer le tag hidden !

    merci d'avance

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    C'est un peu spécial ta façon d'utiliser le tag, <html:hidden property="ID"/>
    positionne l'attribut value à la valeur de la propriété ID. Si la valeur en cours n'est pas la bonne, tu pourrais modifier la valeur d'ID avant le tag <html:hidden> et ça suffirait... j'ai du mal à saisir

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

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

    Informations forums :
    Inscription : Janvier 2008
    Messages : 94
    Points : 117
    Points
    117
    Par défaut
    merci pour ta réponse,

    positionne l'attribut value à la valeur de la propriété ID
    non c'est pas ça que je voudrai, en fait j'ai modifié le code pour ne pas faire une confusion entre les deux id, car l'ID que voudrai obtenir par la JSTL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <c:out value="${ID}"  />
    normalement ça vient à partir de l'action qui a afficher cette page , càd dans l'action je met comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    request.setAttribute("ID", monbean.getId);

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Alors ceci suffit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <html:hidden name="ID"/>

  5. #5
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

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

    Informations forums :
    Inscription : Janvier 2008
    Messages : 94
    Points : 117
    Points
    117
    Par défaut
    j'ai testé ta solution voila le résultat

    org.apache.jasper.JasperException: /vues/monpage.jsp(36,0) D'après le TLD l'attribut property est obligatoire pour le tag hidden
    j'ajoute la l'attribut property

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:hidden name="ID" property="id"/>
    voilà le résultat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javax.servlet.ServletException: No getter method for property: "id" of bean: "ID"
    je pense que c'est logique car mon bean qui contient la propriété id s'appelle monbean et non ID

  6. #6
    Expert éminent

    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
    Points : 7 778
    Points
    7 778
    Par défaut
    Si tu es en J2EE 1.4 ou plus, tu peux utiliser une EL directement dans l'attribut value comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:hidden property="id" value="${ID}" />
    sinon, tu peux utiliser la tld struts-html-el.tld :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html-el:hidden property="id" value="${ID}" />
    sans oublier d'ajouter au début de la jsp la directive taglib qui pointe sur la tld struts-html-el.tld.

    Autre solution : si l'Action dans laquelle tu as mis l'id dans le scope request est liée au même form-bean que l'Action appelée au submit du formulaire, tu peux initialiser la propriété id via son setter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TonActionForm tonActionForm = (TonActionForm) form ;
    tonActionForm.setId(monBean.getId()) ;

  7. #7
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

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

    Informations forums :
    Inscription : Janvier 2008
    Messages : 94
    Points : 117
    Points
    117
    Par défaut
    je te tire le chapeau c_nvy, vous contentez pas d'une solution mais trois solutions pertinentes , pour moi j'apprécie la dernière ,

    heureusement nous avons une expertise comme toi dans notre cher forum

    mille mercis

  8. #8
    Expert éminent

    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
    Points : 7 778
    Points
    7 778
    Par défaut
    De rien.

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

Discussions similaires

  1. jsp erreur Tag &lt;%@ page non terminé
    Par faty_br dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 12/04/2011, 13h51
  2. [debutant][struts]: utilisation du tag <logic:equal ...&g
    Par sleepy2002 dans le forum Struts 1
    Réponses: 13
    Dernier message: 23/11/2006, 17h04
  3. [Struts][JSTL] EL non évalué
    Par captain_kirk dans le forum Struts 1
    Réponses: 10
    Dernier message: 02/03/2006, 18h00
  4. [Struts] JSTL ou tagLib Struts
    Par DeeJimy dans le forum Struts 1
    Réponses: 2
    Dernier message: 03/07/2005, 18h33
  5. [Struts][Débutant]Servlet Action non dispo ?
    Par Ho(c)ine. dans le forum Struts 1
    Réponses: 7
    Dernier message: 09/04/2004, 08h06

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