Struts i18n & JSP - Java - Programmation
Marsh Posté le 23-12-2003 à 19:46:21
bartleby a écrit : Bonjour a tous, |
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
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.
Marsh Posté le 23-12-2003 à 21:53:45
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}"/>
Marsh Posté le 24-12-2003 à 12:05:46
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....
Marsh Posté le 27-12-2003 à 23:51:48
c'est opensource, je t'invite à télécharger les sources, ouvrir le descripteur xml, et lire une doc sur les taglibs
Marsh Posté le 30-12-2003 à 12:45:57
sinon, on peut aussi juste modifier la tld et mettre le rttexpr à true
Marsh Posté le 30-12-2003 à 16:07:31
rooooo moi qui voulait le laisser chercher tout seul
bon remarque tu lui as laissé 3 jours, c'est bien déjà
Marsh Posté le 30-12-2003 à 19:57:37
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
Marsh Posté le 31-12-2003 à 00:39:52
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?)
Marsh Posté le 31-12-2003 à 18:19:07
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...
à part ca je vois pas
Marsh Posté le 23-12-2003 à 17:31:46
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