Tallercm
  • Introduction
  • Introduccion
  • Capitulo 1- EJB MongoDB
    • Capitulo 1 EJB
      • Instalar MongoDB
      • Proyecto EJB
      • Agregar Dependencias
      • MongoClientProvider
      • Enity
      • Facade
      • Converter
      • DataModel
      • Distribuir el EJB
  • Capitulo 2 Proyecto Web
    • Capitulo 2 Proyecto JavaEE
      • Crear proyecto
      • Dependencias
      • Archivo Properties
      • Crear el Template
      • top
      • cambiar Logo
      • left
      • footer
      • template
      • web.xml
      • ejemplo
      • index
      • Capitulo 4. Login
        • paquete util
        • login Controller
        • login.xhtml
  • Capitulo 3 Crud
    • Capitulo 3 CRUD
      • Interfaces
      • Controller
      • Pagina create
      • Pagina list
      • Pagina View
      • Reporte
  • Capitulo 4 Reportes
    • Capitulo 4 Reportes
      • plugin iReport
      • Crear reporte
  • Capitulo 5. Embebidos Referenciados
    • Capitulo 5. Documento Embebido
Powered by GitBook
On this page
  • Crear el paquete idiomas
  • Clase ResourcesFiles.java

Was this helpful?

  1. Capitulo 2 Proyecto Web
  2. Capitulo 2 Proyecto JavaEE
  3. Capitulo 4. Login

paquete util

PreviousCapitulo 4. LoginNextlogin Controller

Last updated 6 years ago

Was this helpful?

Este paquete contendrĂ¡ la clase para el soporte de idiomas, y el manejo del archivo properties.

clic derecho New-> New Package

Crear el paquete idiomas

import java.io.Serializable;
import java.util.Locale;
import javax.enterprise.context.SessionScoped;
import javax.faces.context.FacesContext;
import javax.inject.Inject;
import javax.inject.Named;

/**
 *
 * @authoravbravo
 */
@Named
@SessionScoped
public class Idiomas implements Serializable {

    private static final long serialVersionUID = 1L;
    @Inject
    ResourcesFiles rf;
    private String locale = Locale.getDefault().getDisplayLanguage();

    public void setLocale(String locale) {
        this.locale = locale;
    }

    public synchronized String getLocale() {
        return locale;
    }

    public synchronized String changeLanguage() {
        return "changed";
    }

    public Idiomas() {
    }

    public String englishAction() {
        FacesContext context = FacesContext.getCurrentInstance();
        context.getViewRoot().setLocale(Locale.ENGLISH);
        this.locale = "en";
        rf.saveLocale();
        return null;
    }

    public String spanishAction() {
        FacesContext context = FacesContext.getCurrentInstance();
        context.getViewRoot().setLocale(new Locale("es"));
        this.locale = "es";
        rf.saveLocale();
        return null;
    }




}

Clase ResourcesFiles.java

Especificamos el paquete donde esta ubicado el archivo message

mrb = ResourceBundle.getBundle("com.javscaz.tallerjsd.properties.messages",

Codigo completo

@Named
@SessionScoped
public class ResourcesFiles implements Serializable {

    private static final long serialVersionUID = 1L;
    Locale currentLocale;

    ResourceBundle mrb; //for messages atributos


    public ResourcesFiles() {
    }

    @PostConstruct
    public void init() {
        saveLocale();
    }

    public void saveLocale() {
        currentLocale = FacesContext.getCurrentInstance().getViewRoot().getLocale();

        mrb = ResourceBundle.getBundle("com.javscaz.tallerjsd.properties.messages",
                currentLocale);

    }

    public Locale getCurrentLocale() {
        return currentLocale;
    }

    public void setCurrentLocale(Locale currentLocale) {
        this.currentLocale = currentLocale;
    }

    public ResourceBundle getMrb() {
        return mrb;
    }

    public void setMrb(ResourceBundle mrb) {
        this.mrb = mrb;
    }


    /*
     *Devuelve el mensaje Mrb
     */

    public String getMensaje(String mensaje) {
        return mrb.getString(mensaje);
    }


}