17 April 2008

No theme instance found for locale

com.sun.rave.web.ui.theme.ThemeManager::No theme instance found for locale es

Este tipo de errores se originan por dos posibles causas:
  1. El fichero properties no se encuentra en el lugar especificado; por tanto habría que verificar que el resultado de la compilación de nuestro código fuente deposite dichos ficheros en el lugar esperado.

  2. No se ha especificado los lenguajes soportados en el faces-config.xml; por tanto habría que registrarlos como en el siguiente recuadro.
    ..........
    <locale-config>
    <default-locale>es</default-locale>
    <supported-locale>en</supported-locale>
    <supported-locale>it</supported-locale>
    </locale-config>
    <message-bundle>edu.emmerson.jsf.locales.Language</message-bundle>
    ..........

    Recordar que para cambiar el idioma por defecto de la aplicación habría que indicarlo.

    ..........
    FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale(languageIsoCode));
    ..........

    - FIN -

1 comment:

Anonymous said...

Hola,soy Xavi y te escribo desde España.
Estoy haciendo una web para mi proyecto de fin de carrera en la universidad y quiero que mi web se pueda leer en diferentes idiomas.
He visto cómo lo haces,pero...
Este código:"FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale(languageIsoCode));"...¿¿dónde se pone??,¿¿y si quero canviar el idioma a través de un botón en la página principal de mi web, cómo hacerlo??

Muchas gracias por tu respuesta y tu ayuda.