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

Taglibs Java Discussion :

Interprétation des EL [JSTL]


Sujet :

Taglibs Java

  1. #1
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut Interprétation des EL
    Boujour,

    Je débute avec les jsp et je suis actuellement dans la partie concernant les JSTL. Je rencontre un problème avec l'interprétation des Expression Language.

    J ai le code suivant dans une jsp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
     
    <c:set var="machaine" value="zxy" scope="page"/>
     
    <c:catch var='monexception'>
    	<fmt:parseNumber  var="ChaineInt" value="${machaine}"/>
    </c:catch>
     
    <c:out value="${pagescope.machaine}"/>
     
    <c:if test="${not empty monexception}">
    	<c:out value="Votre chaine n'est pas un nombre"/>
    </c:if>
    Lorsque je lance la jsp, elle ne m'affiche pas la valeur de la variable "machaine" mais juste sont nom.

    ${pagescope.machaine}
    Je ne comprends pas trop mon erreur...

    Merci d'avance pour votre aide

  2. #2
    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
    Es-tu en J2EE 1.3 ou 1.4 ?

    Si tu ne le sais pas, peux-tu montrer les premières lignes de ton web.xml ?

  3. #3
    Membre chevronné Avatar de florentB
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2006
    Messages : 332
    Par défaut
    Ne serait-ce pas plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <c:out value="${pageScope['machaine']}" />

  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
    Citation Envoyé par florentB
    Ne serait-ce pas plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <c:out value="${pageScope['machaine']}" />
    Effectivement, tu as raison.

  5. #5
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    tu veux le haut du web.xml de mon application ou du serveur tomcat???

  6. #6
    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
    Celui de ton application mais ce n'est peut-être plus utile car ça fonctionne sûrement avec la solution donnée par florentB .

  7. #7
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    Alors après recherche j ai la verion 1.5 du J2EE... C est possible???

    J ai essayé de changer la ligne par celle que vous m avez fourni mais ça ne change rien il m affiche tjs le nom de la variable...

  8. #8
    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
    Oui, c'est possible.

    Peux-tu quand même montrer le début de ton web.xml pour s'en assurer ?
    Parce que si c'est le cas, l'uri que tu utilises dans la directive taglib qui pointe sur la librairie Core n'est pas bonne.

  9. #9
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    Voilà le fichier web.xml de mon application JSTL...
    Code xml : 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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!--
      Copyright 2004 The Apache Software Foundation
     
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at
     
          <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">http://www.apache.org/licenses/LICENSE-2.0</a>
     
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
     
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
     
    <web-app>
     
        <display-name>JSTL</display-name>
        <description>
         Dcouverte des JSTL
        </description>
     
        <taglib>
    	<taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
    	<taglib-location>/WEB-INF/tld/fmt.tld</taglib-location>
        </taglib>
        <taglib>
    	<taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
    	<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
        </taglib>
        <taglib>
    	<taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>
    	<taglib-location>/WEB-INF/tld/sql.tld</taglib-location>
        </taglib>
        <taglib>
    	<taglib-uri>http://java.sun.com/jstl/x</taglib-uri>
    	<taglib-location>/WEB-INF/tld/x.tld</taglib-location>
        </taglib>
    </web-app>

  10. #10
    Membre chevronné Avatar de florentB
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2006
    Messages : 332
    Par défaut
    Juste comme ca : essaie de faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <c:out value="${machaine}" />
    Normalement, ce tag va regarder dans les différents scopes possibles afin de getter la valeur.
    Il va faire :
    1. page
    2. request
    3. session
    4. application

    S'il la trouve dans la page, il l'affiche et ne cherche pas plus loin.

    J'espère que ce t'aideras

  11. #11
    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
    Tu me parlais donc de la version 1.5 de Java.

    D'après le web.xml, tu es en J2EE 1.3 :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
    Donc, l'uri que tu as codé est bonne, soit :
    Par contre, il faudrait s'assurer que tu as la bonne version de la JSTL, soit la 1.0.

    Peux-tu regarder dans le fichier MANIFEST.MF dans le répertoire META-INF du jar jstl.jar si tu as bien ceci :
    Specification-Title: JavaServer Pages Standard Tag Library (JSTL)
    Specification-Version: 1.0

  12. #12
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    alors j ai la version 1.1 de la taglib jstl...

    Je vais essayer de trouver la 1.0 et voir si cela règle mon problème.

    Juste tu peux me dire à quoi tu as vu la version de mon J2EE dans le fichier web.xml???

  13. #13
    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
    Si tu étais en J2EE 1.4, tu aurais ceci dans l'entête du web.xml :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version="1.0" encoding="ISO-8859-1"?>
     
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    	version="2.4">
    Pour plus d'infos, voir ici.

    Si tu as la JSTL 1.1, ça vaudrait peut-être le coup de passer en J2EE 1.4 en modifiant l'entête de ton web.xml comme ci-dessus.

    Et en codant la directive taglib comme ceci dans la jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c" %>

  14. #14
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    Alors en changeant la version des .jar et .tld cela fonctionne à merveille je vais essayer de passer au 1.4 alors...

    Merci beaucoup pour ton aide

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 21/06/2006, 09h31
  2. Réponses: 2
    Dernier message: 19/10/2004, 09h55
  3. DBCC SQLPERF ( LOGSPACE ) Interprétation des résultats
    Par Labienus dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/07/2004, 15h50

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