2013-07-02 2 views
0

J'ai suivi le tutoriel ci-dessous pour configurer la localisation de mon application Web.Spring Framework La localisation lit toujours depuis en (anglais) fichier

http://viralpatel.net/blogs/spring-3-mvc-internationalization-i18n-localization-tutorial-example/

J'ai trois fichiers propriétés: messages_en_properties, messages_es.properties et messages_zh_CN.properties

Chaque fichier a la ligne suivante:

loging.name = (Nom d'utilisateur traduit au correspondant

Dans mon fichier .jsp, j'ai défini mes données de table pour afficher le nom d'utilisateur en utilisant la ligne suivante:

<td><spring:message code = "login.name" text = "Default Text"/></td> 

Cela fonctionne, mais il ne lira jamais de mon fichier de propriétés en anglais. J'ai essayé de définir les paramètres régionaux manuellement dans le fichier. JSP à zh_CN et es, mais je reçois toujours les valeurs de fichier en anglais. J'ai même essayé de placer les paramètres régionaux dans un pays pour un fichier que je n'ai pas et il affiche toujours le texte du fichier anglais, et non le texte par défaut. Je suis certain que les paramètres régionaux sont en cours de modification puisque le navigateur me demandera si je souhaite que la page soit traduite.

Voici la partie de mon code qui configure le localeChangeInterceptor.

<beans:bean id="localeChangeInterceptor" 
    class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> 
    <beans:property name="paramName" value="lang" /> 
</beans:bean> 

<beans:bean id="handlerMapping" 
    class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"> 
    <beans:property name="interceptors"> 
     <beans:ref bean="localeChangeInterceptor" /> 
    </beans:property> 
</beans:bean> 

également essayé de changer à ce qui suit ...

<mvc:interceptors> 
    <beans:bean id="localeChangeInterceptor" 
     class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> 

<beans:bean id="localeResolver" 
    class="org.springframework.web.servlet.i18n.CookieLocaleResolver"> 
    <beans:property name="defaultLocale" value="en" /> 
</beans:bean> 

<beans:bean id="handlerMapping" 
    class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"> 
</beans:bean> 

Toute aide serait grandement apprécié.

Répondre

1
Surround 
> <bean id="localeChangeInterceptor" 
>  class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> 
>  <property name="paramName" value="lang" /> </bean> 
with <mvc:interceptors> 

comme

<mvc:interceptors> 
     <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" > 
      <property name="paramName" value="lang" /> 
     </bean> 
</mvc:interceptors> 
+0

Merci pour la réponse, je vais essayer demain et vous revenir. –

+0

Je suis donc retourné à mon code et j'ai déjà défini l'intercepteur. J'ai édité ma réponse pour afficher un extrait de ma page xml. –

+0

comment avez-vous changé les paramètres régionaux .. puisque vous avez défini lang comme paramètre pour cela ... frapper l'url comme "url? Lang = es" ... j'ai suivi le même tutoriel et l'ajout d'intercepteur a travaillé pour moi .. – roshan

Questions connexes