Printemps: Pas de message trouvé sous le code pour la locale en_US'
applicationContext-Service.xml
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list><value>messages</value></list>
</property>
</bean>
J'ai messages_en_US.propriétés /src/messages_en_US.propriétés
registerForm.passwordNotMatch=Password does not match.
C'est la ligne de code est l'éducation de l'erreur:
binding.addError(new FieldError(REGISTER_FORM, "passwordNotMatch", messageSource.getMessage("registerForm.passwordNotMatch", null, locale)));
Erreur: Pas de message trouvé sous le code 'registerForm.passwordNotMatch " pour locale 'fr_fr'.
Ce qui ne va pas?
Où est
applicationContext-Service.xml
déclaré?
OriginalL'auteur user985351 | 2011-11-03
Vous devez vous connecter pour publier un commentaire.
cela fonctionne si vous passez à:
?
J'ai eu l'expérience que si l'utilisation de
ReloadableResourceBundleMessageSource
, en jsp ne trouve pas le fichier de propriétés. l'ajout declasspath:
avant labasename
résolu mon problème.Bien même si a mon projet géré par maven, je pense que vous pouvez essayer de toute façon.
OriginalL'auteur Kent
J'ai eu le même problème. J'ai essayé
classpath:
mais il n'a pas fait une différence. Fini par mettre dans un chariot de retour sur la dernière ligne de mon fichier de propriétés (de sorte que le curseur se trouve sur la ligne suivante, qui est la fin du fichier).Aussi, si vous utilisez Maven et vous placez votre fichier de propriétés comme suit:
/resources/xxxx.properties
, le répertoire des ressources est automatiquement tiré dans votre générés guerre, doncclasspath:
n'est pas nécessaire.PROJECT_BASE/src/main/resources/
, juste pour éviter la confusionOriginalL'auteur Jeff
Je pense qu'au lieu de
<property name="basenames">
il devrait être<property name="basename">
.setBasename()
accepte un seulString
,setBasenames()
accepte un tableau deString
s.OriginalL'auteur Sandeep