Definición de los ficheros de mensajes en springMessages.xml:
<!-- Base resource that inyects default properties -->
<bean id="parentResource" class="org.springframework.context.support.
ReloadableResourceBundleMessageSource">
<property name="useCodeAsDefaultMessage" value="true" />
<property name="cacheSeconds" value="1" />
</bean>
<!-- Resources and resource groups -->
<bean id="mainMessages" parent="parentResource">
<property name="basename" value="file:main"/>
</bean>
<bean id="myMessages" parent="parentResource">
<property name="basenames">
<list>
<value>file:myMessages</value>
</list>
</property>
</bean>
<bean id="otherMessages" parent="parentResource">
<property name="basenames">
<list>
<value>file:other1</value>
<value>file:other2</value>
</list>
</property>
</bean>
La clase ReloadableResourceBundleMessageSource permite configurar el tiempo cada cual Spring recargará las properties de los ficheros definidos.
Además permite la agrupación de varios ficheros de mensajes mediante la definición del String[] con los nombres de los mismos (y ruta).
Desde el código Java prodremos acceder a los mismos con:
BeanFactory beanFactory = new ClassPathXmlApplicationContext("/springMessages.xml");
ReloadableResourceBundleMessageSource rms=beanFactory.getBean("myMessages");
String message: rms.getMessage("messageCode", null, "es");
En caso de estar definido el fichero myMessages_es.properties lo obtendria de ahi si no de myMessages.properties
Salud!