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

  FORUM HardWare.fr
  Programmation
  Java

  [JSTL/JSP/JAVA] comment afficher la clé d'un .properties ? [Resolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JSTL/JSP/JAVA] comment afficher la clé d'un .properties ? [Resolu]

n°1516601
Profil sup​primé
Posté le 19-02-2007 à 18:51:07  answer
 

Bonjour à tous,
 
J'ai lu beaucoup de choses au sujet des jstl et de la gestion de l'internationalisation (i18n) mais je m'y perd un peu  :??:  
 
Ma question est simple : Comment afficher dans ma page JSP les valeurs associées aux clefs de mes fichier properties ? (j'utilise tomcat).
 
Voici quelques bouts de mon code :
 
--> Mes fichiers formulaire1_en_GB.properties et formulaire1_fr_FR.properties (situé dans WEB-INF/classes/properties), peut pas faire plus simple  :p  
 

Code :
  1. # Fichier de properties pour la langue anglaise
  2. # Formalisme : clef/valeur
  3. message_bienvenu=Hello


Code :
  1. # Fichier de properties pour la langue française
  2. # Formalisme : clef/valeur
  3. message_bienvenu=Bonjour


 
--> Dans ma classe JAVA

Code :
  1. ...
  2. if (request.getParameter("langue" ) != null && !request.getParameter("langue" ).equals("" ) && request.getParameter("pays" ) != null && !request.getParameter("pays" ).equals("" )) {
  3.   request.getSession().setAttribute("maLocale", new Locale(request.getParameter("langue" ), request.getParameter("pays" )));
  4.  }
  5.  ResourceBundle bundle = ResourceBundle.getBundle("properties.formulaire1", (Locale) request.getSession().getAttribute("maLocale" ));
  6. ...


 
--> Et enfin la JSP où il doit manquer quelquechose :

Code :
  1. ...
  2. <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  3. ...
  4. <tr>
  5.      <fmt:message key="properties.formulaire1.message_bienvenu"/>
  6. </tr>
  7. ...


 
Faut-il mettre quelquechose dans le fichier web.xml ?
 
Merci par avance  :) .


Message édité par Profil supprimé le 21-02-2007 à 18:28:17
mood
Publicité
Posté le 19-02-2007 à 18:51:07  profilanswer
 

n°1516789
Profil sup​primé
Posté le 20-02-2007 à 09:53:54  answer
 

J'ai vu qu'il fallait naturellement définir le tag dans le web.xml, petit oubli  :whistle: :

Code :
  1. ...
  2. <!-- Définition du taglib pour la gestion de l'internationalisation (i18n) -->
  3. <taglib>
  4. <taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri>
  5. <taglib-location>/WEB-INF/fmt.tld</taglib-location>
  6. </taglib>
  7. ...


Que faut-il définir dans le fmt.tdl ?
 
Merci.

n°1516956
Profil sup​primé
Posté le 20-02-2007 à 13:43:33  answer
 

Bon je me répond moi même  :o ... :lol:  
 
Voilà, j'ai donc lu, relu, rerelu les docs sur l'internationalisation.
 
J'ai télécharger les fichiers jstl.jar et standard.jar que j'ai placé dans WEB-INF/lib/.
J'ai également placé tout les fichiers de descripteur .tld (fmt.tld, c.tld, sql.tld,x.tld,...) dans WEB-INF/tld/.
 
Il me reste un petit problème, sur ma page JSP apparait : ???properties.formulaire1.message_bienvenu??? (au lieu de 'Bonjour' ou 'Hello' en fr et en).
 
J’en déduit qu’il ne trouve pas mes fichiers de properties, dans ma JSP j’ai mis ceci :

Code :
  1. <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  2. ...
  3. <tr>
  4.      <fmt:setBundle basename="properties.formulaire1"/>
  5.      <fmt:message key="message_bienvenu"/>
  6. </tr>
  7. ...


 
Quelqu'un pourrait me guider ? merci  :hello:


Message édité par Profil supprimé le 20-02-2007 à 13:44:17
n°1517212
Profil sup​primé
Posté le 20-02-2007 à 18:28:33  answer
 

:(  Vraiment personne ?

n°1517391
gatsu35
Blablaté par Harko
Posté le 21-02-2007 à 09:27:14  profilanswer
 

Nan mais ici c'est HTML/CSS/JS, le XML c'est dans une autre sous categorie :o

n°1517552
Profil sup​primé
Posté le 21-02-2007 à 12:00:37  answer
 

Je viens de voir que si je créé un fichier formulaire1.properties (avec le même contenu que le fichier formulaire1_fr_FR.properties présenté plus haut), mon tag <fmt:message key="message_bienvenu" /> de ma page formulaire1.jsp m'affiche bien 'Bonjour'   :) .
 
De ce fait il y un problème d'interprétation des _fr_FR, _en_GB  :??: .
 
Quelqu'un(e) pourrait-il m'aider ? (je rappelle que je suis sous tomcat avec l'ide eclipse).
 
Merci à toutes et à tous  :) .


Message édité par Profil supprimé le 21-02-2007 à 12:01:29
n°1517606
brisssou
8-/
Posté le 21-02-2007 à 14:02:45  profilanswer
 

vérifie ta locale actuelle. Tu es surement trop précis. _fr, ça suffit.


Message édité par brisssou le 21-02-2007 à 14:02:52

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1517683
Profil sup​primé
Posté le 21-02-2007 à 15:08:48  answer
 

J'ai essayé en renommant mes fichiers properties en formulaire1_fr.properties... comme tu me l'a conseillé, mais rien n'y fait.
 
J'ai également essayé avec le code ci-dessous (dans ma JSP) en précisant le nom de mon bundle que j'ai défini dans ma Servlet (voir plus haut) et l'attribut 'var'

Code :
  1. <fmt:setBundle basename="properties.formulaire1" var="maLocale" />
  2. <fmt:message bundle="maLocale" key="message_bienvenu" />


Mais avec ça j'obtiens une exception.
 
Je rame depuis hier après midi la dessus, je sais plus trop quoi essayer  :sweat: .

n°1517908
Profil sup​primé
Posté le 21-02-2007 à 18:26:35  answer
 

Mamamia tant de souffrance pour en arriver là. ça fonctionne  :bounce:  
 
Pour ceux que ça pourrait aider, voilà ce qu'il faut mettre dans la page JSP :
 

Code :
  1. ...
  2. <fmt:setLocale value="<%=request.getSession().getAttribute("maLocale" )%>" scope="session"/>
  3. <fmt:setBundle basename="properties.formulaire1" scope="session"/>
  4. ...
  5. <fmt:message key="message_bienvenu"/>
  6. ...


 
En gardant les fichiers properties sous la forme formulaire1_fr_FR.properties, formulaire_us_US.properties, ...
 
A la prochaine  :hello: .

n°2161704
ouldfella
Posté le 28-10-2012 à 12:11:28  profilanswer
 

j'ai le meme probleme jai pas trouvé un tutoriel pour appliquer l'internationalisation,
jai suivi tius les exemples à la lettre mais aucun ne fonctionne
quelqu'un peut il m'aider ?

mood
Publicité
Posté le 28-10-2012 à 12:11:28  profilanswer
 

n°2161705
ouldfella
Posté le 28-10-2012 à 12:13:32  profilanswer
 



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

  [JSTL/JSP/JAVA] comment afficher la clé d'un .properties ? [Resolu]

 

Sujets relatifs
[résolu] Moyenne sur plusieurs colonnes enum[RESOLU]Parse error unexpected $end !!
[RESOLU] Probleme pour renommer les fichiers PHP[Java][Shell] Transfert de fichier par FTP
Fonction renvoyant pointeur de structure [Résolu][résolu] Probleme d'appel d'un objet dans ma classe
Différence IE/Firefox [Résolu]cherche livre java orienté web J2EE
[Ruby] [Resolu] Nettoyage de caractères accentués[html] mailto + modification adresse mail [Résolu]
Plus de sujets relatifs à : [JSTL/JSP/JAVA] comment afficher la clé d'un .properties ? [Resolu]


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