M4-UF1 FRAMEWORK SPRING

UNIDAD 7: Internacionalización y localización

eugeniaperez.es

unidad 7: Internacionalización

 

eugeniaperez.es

Descarga el código en Bitbucket

 

Descarga el proyecto springMVC.internationalization del repositorio de Bitbucket:

Usuario: 

Psswd:

URL: https://eugenia_perez@bitbucket.org/eugenia_perez/springmvc.internationalization.git

 

 

UNIDAD 7: internacionalización

 

eugeniaperez.es

7.1 Internacionalización de contenidos

  • Se crearán los ficheros properties en src/main/resources:messages_{idioma}.properties
  • Estos ficheros son pares clave - valor. La clave será la misma en todos los ficheros, y el valor será traducido al idioma indicado.
  •  

 

 

 

 

navbar.assignments = Ver tareas
navbar.users = Listar usuarios
navbar.newUser = Nuevo usuario
navbar.language = Idioma
english = Inglés
spanish = Español

messages_en.properties

UNIDAD 7: internacionalización

 

eugeniaperez.es

7.1 Internacionalización de contenidos

Sustituir las cadenas de texto por su clave dentro de las vistas:

<s:message code="clave">

Añadir en mvc-config.xml o servlet-context.xml:

  • messageSource
  • localeResolver
  • mvc:interceptor

 

 

 

 

UNIDAD 7: internacionalización

 

eugeniaperez.es

7.1 Internacionalización de contenidos

En mvc-config.xml:

  • messageSource: se indica cómo deben llamarse los ficheros dentro del classpath: messages_idioma.properties
  • localeResolver: se encarga de crear automáticamente una cookie con las preferencias del usuario. Además se establece un idioma por defecto (en este caso, inglés).
  • Nota: si el localeResolver NO es definido, entonces se cargaría el idioma configurado en el navegador.

 

 

 

 

UNIDAD 7: internacionalización

 

eugeniaperez.es

7.1 Internacionalización de contenidos

En mvc-config.xml o servlet-context:

  • mvc:interceptors: intercepta cada petición del usuario e identifica el idioma a través del parámetro locale de la request.
  • Nota: para que el anterior funcione es necesario establecer el localeResolver.

 

 

 

 

http://localhost:8080/springInternationalization/?locale=en

http://localhost:8080/springInternationalization/?locale=es

UNIDAD 7: internacionalización

 

eugeniaperez.es

7.1 Internacionalización de contenidos

http://localhost:8080/springInternationalization/?locale=en

http://localhost:8080/springInternationalization/?locale=es

<ul class="dropdown-menu" role="menu">
	<li><a href="?locale=en"><img src="blank.gif"
	       class="flag flag-gb"
	       alt="<s:message code="english"></s:message>" /> 
               <s:message code="english"></s:message></a>
        </li>
	<li><a href="?locale=es"><img src="blank.gif"
	       class="flag flag-es"
	       alt="<s:message code="spanish"></s:message>" /> 
               <s:message code="spanish"></s:message></a>
        </li>
</ul>

Unit 7

By eugenia_perez

Loading comments...

More from eugenia_perez