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 2 Java Discussion :

Internationalisation : Ou mettre package.properties ? ou comment le déclarer ?


Sujet :

Struts 2 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Altenide
    Homme Profil pro
    Formateur en technologies web
    Inscrit en
    Décembre 2008
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Formateur en technologies web
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2008
    Messages : 129
    Par défaut Internationalisation : Ou mettre package.properties ? ou comment le déclarer ?
    Bonjour,

    Je m'échine en vain à récupérer le contenu de mes fichiers bundle ...

    mon fichier struts.xml :

    Code : 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
     
    <struts>
        <constant name="struts.enable.DynamicMethodInvocation" value="true" />
        <constant name="struts.devMode" value="true" />
        <constant name="struts.i18n.reload" value="true" />
        <constant name="struts.configuration.xml.reload" value="true" />
        <constant name="struts.custom.i18n.resources" value="global-messages" />    
     
     
        <package name="SimpleBlogWithStruts" namespace="/" extends="struts-default">
            <default-action-ref name="login" /> 
     
            <action name="login" class="com.blog.action.loginAction">
                <result name="error" type="redirect">index.jsp</result>
                <result name="success" type="redirect">/back-office/administration.jsp</result>
            </action>
    mon répertoire sources :

    src
    |-com
    package.properties
    package_en.properties
    |-com.blog-action
    ActionLogin.java
    ActionLogout.java
    |- com.blog.beans
    etc ....
    mon fichier .jsp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	<div id="visualTrace">
    	<p>Current session is : <s:property value="#session.id"/></p>
    		<ul>
    		<li><a href="login.action?request_locale=fr">Fran&ccedil;ais</a></li>
    		<li><a href="login.action?request_locale=en">Anglais</a></li>
    	</ul>
    	<p>Current i18n message is  : <s:property value="%{getText('hello')}"/></p>
    	</div>

    mon web.xml

    Code : 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
    46
    47
    48
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      <display-name>SimpleBlogWithStruts</display-name>
     
    <!-- Les welcomes Files -->  
     
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
     
    	<!-- Chargeur du datasource -->
        <listener>
            <listener-class>com.blog.services.ApplicationListener</listener-class>
        </listener>
     
    	<!-- Parametre globaux -->
    	<context-param>
            <param-name>dataSourceJNDI</param-name>
            <param-value>java:/comp/env/jdbc_blog_MySQL</param-value>
        </context-param>
     
    <!-- Le filtre de struts  --> 
     
        <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
        </filter>
     
        <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>  
     
        <!-- Informations de connexion a la base de donnees -->
    	<resource-ref>
    		<description>Connexion a la base de donnees MySQL</description>
    		<res-ref-name>jdbc_blog_MySQL</res-ref-name>
    		<res-type>javax.sql.DataSource</res-type>
    		<res-auth>Container</res-auth>
    	</resource-ref> 
      
      
    </web-app>
    et mes librairies :

    commons-fileupload-1.2.1.jar
    common-io-1.3.2.jar
    commons-logging-1.1.jar
    junit ...
    log4j ...
    ognl-2.6.11.jar
    struts2-core-2.1.6.jar
    xwork-2.1.2.jar

    mon fichier package.properties :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    hello = Tarataaaaaaaaaaaaaaaaaa

    et j'ai beau triturer mon code dans tous les sens depuis des heures je ne vois pas mon erreur ...

    <p>Current i18n message is : <s:property value="%{getText('hello')}"/></p> ne renvoi rien du tout

    si vous voyez quelque chose ... merci.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2006
    Messages : 13
    Par défaut
    Tu peux le mettre dans le meme dossier que ton action.java qui sera utilisé pour la jsp.

    Pour le détail de la recherche des resource bundles, tu le trouves dans Starting Struts2

    essaie peut etre <s:text name="le.nom.de.la.cle" /> dans ta jsp

  3. #3
    Membre confirmé Avatar de Altenide
    Homme Profil pro
    Formateur en technologies web
    Inscrit en
    Décembre 2008
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Formateur en technologies web
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2008
    Messages : 129
    Par défaut
    merci pour le lien.

    J'ai finalement trouvé la solution. Je déclare directement ceci dans mon fichier struts.xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <constant name="struts.custom.i18n.resources" value="package"  />
    et j'utilise ensuite mes fichiers d'internationalisation à la racine de mes sources java. Je les nomme en package_fr.properties etc..

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

Discussions similaires

  1. [PLatForm] Où mettre log4j.properties ?
    Par n!co dans le forum NetBeans
    Réponses: 10
    Dernier message: 25/06/2013, 12h24
  2. Réponses: 7
    Dernier message: 21/12/2006, 08h02
  3. Réponses: 5
    Dernier message: 15/09/2006, 14h26
  4. Mettre une property en virtual
    Par WebPac dans le forum Langage
    Réponses: 11
    Dernier message: 25/10/2004, 14h11

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