Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1573 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Struts i18n & JSP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Struts i18n & JSP

n°596207
bartleby
Posté le 23-12-2003 à 17:31:46  profilanswer
 

Bonjour a tous,
 
Je rencontre un probleme avec une JSP.
J'utilise le tag "fmt" de la taglib jstl....peut etre plus connu par ceux d'entre vous qui utilise le tag "message de l'i18n Struts.
 
Mon probleme est le suivant, j'ai un bout de scriplet qui n'est pas resolu lors de la compilation de ma JSP.
 
Comme je veux parametrer le language de ma JSP dynamiquement ( et donc que les tag "message" utilise le bon bundle, j'utilise le tag fmt:setLocale comme suit:
 
<fmt:setLocale value="<%=(String)session.getAttribute("language" )%>" />
 
Mais ca marche pô !
J'ai décompilé ma JSP et je trouve le code suivant:
 
 
_jspx_th_fmt_setLocale_0.setValue("<%=(String)session.getAttribute(\"language\" )%>" );
 
C'est a dire que le scriplet n'est pas interpreté !
Vous auriez pas une idée ?
 
Merci d'avance

mood
Publicité
Posté le 23-12-2003 à 17:31:46  profilanswer
 

n°596250
ozark74
Posté le 23-12-2003 à 19:46:21  profilanswer
 

bartleby a écrit :

Bonjour a tous,
 
Je rencontre un probleme avec une JSP.
J'utilise le tag "fmt" de la taglib jstl....peut etre plus connu par ceux d'entre vous qui utilise le tag "message de l'i18n Struts.
 
Mon probleme est le suivant, j'ai un bout de scriplet qui n'est pas resolu lors de la compilation de ma JSP.
 
Comme je veux parametrer le language de ma JSP dynamiquement ( et donc que les tag "message" utilise le bon bundle, j'utilise le tag fmt:setLocale comme suit:
 
<fmt:setLocale value="<%=(String)session.getAttribute("language" )%>" />
 
Mais ca marche pô !
J'ai décompilé ma JSP et je trouve le code suivant:
 
 
_jspx_th_fmt_setLocale_0.setValue("<%=(String)session.getAttribute(\"language\" )%>" );
 
C'est a dire que le scriplet n'est pas interpreté !
Vous auriez pas une idée ?
 
Merci d'avance


 
1)je ne suis pas un spécialiste UI mais il me semble que tu ne peux pas imbriquer un scriplet dans un taglib ... à vérifier  :sweat:  
 
2)en struts, le tag <bean:message key="...." /> utilise la locale stoquée dans la session sous le nom Action.LOCALE_KEY
Je suppose qu'avec <fmt:message /> il doit y avoir quelque chose de similaire.

n°596307
_guigui_
Posté le 23-12-2003 à 21:53:45  profilanswer
 

1/ on peut trés bien utiliser des scriptlets dans des taglibs, il suffit que le concepteur de la taglib l'ait autorisé.
 
2/ on ne peut effectivement pas utiliser de scriplet dans la taglib fmt pour la propriété value. Il faut utiliser EL (Expression Language), ie mettre la propriété dans la session, la requete ou le pageScope, puis appeler la variable comme suit:
<fmt:setLocale value="${pageScope.locale}"/>

n°596427
bartleby
Posté le 24-12-2003 à 12:05:46  profilanswer
 

C'etait ca, merci _guigui_ , et a toi aussi ozark74 ;) !
 
Question subsidiaire: Pourquoi et comment ont-ils interdit les scriplets dans les tags fmt ?
 
Je vais verifier si c'est pareil pour tout les jstl....

n°597744
_guigui_
Posté le 27-12-2003 à 23:51:48  profilanswer
 

c'est opensource, je t'invite à télécharger les sources, ouvrir le descripteur xml, et lire une doc sur les taglibs  ;)

n°599273
cookies
Posté le 30-12-2003 à 12:45:57  profilanswer
 

sinon, on peut aussi juste modifier la tld et mettre le rttexpr à true ;)

n°599417
_guigui_
Posté le 30-12-2003 à 16:07:31  profilanswer
 

rooooo moi qui voulait le laisser chercher tout seul ;)  
bon remarque tu lui as laissé 3 jours, c'est bien déjà :lol:

n°599535
the real m​oins moins
Posté le 30-12-2003 à 19:57:37  profilanswer
 

en meme temps s'il est à false, y'a ptet une raison, qu'il vaudrait mieux chercher à comprendre avant de changer et de se manger des effets de bords intempestifs


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°599647
cookies
Posté le 31-12-2003 à 00:39:52  profilanswer
 

c'est pas trop génant de le modifier pour des taglibs
en fait, j'ai jamais compris pourquoi on mettait pas tout en rtexpr par défaut (sauf peut etre pour des questions de performance?)

n°600002
_guigui_
Posté le 31-12-2003 à 18:19:07  profilanswer
 

moi je dirais plutot que si le but des taglibs, c'est de pas faire de scriplets, autant ne pas en faire du tout et ne pas mettre de <%= ... %> partout... :ange:  
à part ca je vois pas :whistle:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Struts i18n & JSP

 

Sujets relatifs
[Struts tiles] inclure un layout dans un layoutJSP : Scriplet ou Taglib ?
[JSP] Comment ca marche[JSP] importer des données contenues dans un fichier Excel
[JSP] Filter JPS et PrintWriter bug enconprehensibleJSP - Session - Cookie
Besoin de vôtre avis ( JSP + Applet inside )Livres de programmation JSP
[Problème] Passage servlet -> JSP, et mappage web.xmlMétriques JAVA et JSP
Plus de sujets relatifs à : Struts i18n & JSP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR