package be.redtree.converter; import java.util.Locale; import javax.faces.component.UIComponent; import javax.faces.context.FacesContext; import javax.faces.convert.Converter; import javax.faces.convert.FacesConverter; @FacesConverter(value = "localeConverter") public class LocaleConverter implements Converter { public Object getAsObject(FacesContext arg0, UIComponent arg1, String value) { String language = value.split("\\_")[0]; String country = value.split("\\_")[1]; Locale locale = new Locale(language, country); return locale; } public String getAsString(FacesContext arg0, UIComponent arg1, Object value) { if (value instanceof Locale) { Locale locale = (Locale) value; return locale.toString(); } return (String) value; } }