Skip to content


Personalizar i18n en Spring Framework

Puede que haya circunstancias en las que no queramos utilizar la traducción mediante i18n por defecto y prefiramos usar nuestro propio gestor de idioma.

En el archivo de configuración de spring myservlet-spring.xml añadimos el bean que usaremos, lo único obligatorio es el nombre del  id del bean que llamarán las tags de spring.

<bean id="messageSource" class="es.crazyteam.GestorMensajes"/>

Para buscar un mensaje desde nuestras jsps se utiliza el tag de spring:

<spring:message code="mensaje-idioma"/>

¿ya funciona?, efectivamente nó falta crear la clase del bean, para ello crearemos una clase de ejemplo como la que sigue:

package es.crazyteam;

import org.springframework.context.support.AbstractMessageSource;

public class GestorMensajes extends AbstractMessageSource{
/** Metodo obligatorio a implementar por heredar AbstractMessageSource este método es al que invoca spring */
public MessageFormat resolveCode(String a,Locale s){

//Crear mis locales
Locale l=new Locale("es","ES");
return createMessageFormat(getMensaje(a),l);
}
private String getMensaje(String mensaje){

return "Este es el mensaje "+mensaje;
}

}

Ahora ya tenemos todo lo necesario para gestionar nuestros mensajes.

Artículos Relacionados

Posted in Java, spring. Tagged with , , .

0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

Some HTML is OK

(required)

(required, but never shared)

or, reply to this post via trackback.