Spring MVC & multiple fichiers messages.properties
Bonjour,
Je d�bute en Spring MVC et j'ai besoin de votre coup de main pour l'internationalisation.
J'essaie de cr�er une simple page de login en fran�ais et en anglais avec une seule jsp qui doit afficher les informations r�cup�r�es soit dans le fichier 'messages_en', soit dans 'messages_fr' en fonction de langue par d�faut du navigateur.
Ces 2 fichiers sont dans 'WEB-INF/classes'.
Dans 'applicationContexte.xml', j'initialise le bean 'messageSource'
Code:
1 2 3 4 5 6 7 8
|
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basenames">
<list>
<value>messages</value>
</list>
</property>
</bean> |
Voici mon mapping dans 'nomduservlet-servlet.xml'
Code:
1 2 3 4 5 6 7
|
<bean name="loginForm" class="org.springframework.web.servlet.mvc.SimpleFormController">
<property name="formView" value="loginForm"/>
<property name="successView" value="loginSuccess"/>
<property name="commandName" value="userLogin"/>
<property name="commandClass" value="org.deep.spring.mvc.user.User"/>
</bean> |
Code:
1 2 3 4 5 6 7 8
|
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="loginForm.htm">loginForm</prop>
</props>
</property>
</bean> |
Je n'ai pas cr�� de Controller dans mon projet, j'utilise simplement 'SimpleFormController'.
Voici une partie du code dans 'loginForm.jsp'
Code:
1 2 3 4 5 6 7 8 9
|
<%@ include file="/WEB-INF/include.jsp" %>
<html>
<head><title><spring:message code="user.login.title"/></title></head>
<body>
<hr>
<h2><center><spring:message code="user.login.title.body" /></center></h2>
<form:form action="loginForm.htm" method="POST" commandName="userLogin">
... |
et le r�pertoire contenant les fichiers properties
WEB-INF
|
---classes
|__ messages_en.properties
|__messages_fr.properties
En gros, ce que ce fais actuellement, c'est de r�cup�rer les valeurs de ces fichiers directement dans la jsp avec
Code:
1 2 3
|
spring:message code="user.login.title.body"
... |
en fonction de la langue du navigateur.
mais �a ne marche pas. Si j'utilise fran�ais comme langue du navigator, y il a un plantage
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/loginForm.jsp at line 6
3: <head><title><spring:message code="user.login.title"/></title></head>
4: <body>
5: <hr>
6: < <h2><center><spring:message code="user.login.title.body" /></center></h2>
7: <form:form action="loginForm.htm" method="POST" commandName="userLogin">
8: <table align="center">
9: <tr>
Cause mère:
javax.servlet.ServletException: javax.servlet.jsp.JspTagException: No message found under code 'user.login.title.body' for locale 'fr'. |
Je vous assure que code 'user.login.title.body' est bien pr�sent dans messages_fr.properties
et si je change de langue (du navigateur) en anglais. Pas de plantage mais les infos sont affich�es en fran�ais.
D'o� peut venir ce comportement?
Est-ce que c'est possible de r�cup�rer les le contenu du fichier .properties directement dans la jsp (sans passer par un bean impl�mentant Controller et r�cup�rant le context de l'application)?
Merci d'avance de vos r�ponses.