lunes, 4 de febrero de 2008

AppFuse i18n (Internationalization)

Para que nuestra aplicación appfuse pueda utilizarse en varios idiomas, tenemos que definir las posibles claves en el archivo /src/main/resources/messages.properties en forma de clave/valor.
Ejemplo:
webapp.name=AppFuse Light

Cada idioma nuevo deberá tener un messages.properties diferente, de forma que si tenemos idioma inglés deberemos tener messages_en.properties, y en español messages_es.properties

Después desde nuestro jsp podemos referenciar dicha clave con el objeto message
fmt:message key="webapp.name" y según la configuración del navegador de usuario que consulte la aplicación (firefox>preferencias>avanzado>general>idiomas>elegir) obtendrá el idioma correspondiente


Toto esto funcionará si nuestro framework está bien configurado, es decir si el archivo /src/main/webapp/WEB-INF/dispatcher-servlet.xml ha declarado el bean:
bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource" con el basename=messages

No hay comentarios: