Primefaces日历不显示秒数

时间:2017-09-20 10:49:13

标签: jsf primefaces

我有一个日历,我可以选择日期和时间(仅限小时和分钟):

<p:calendar locale="de" pattern="dd.MM.yyyy HH:mm"

不,我也必须提供英文翻译。所以我需要删除localepattern部分。

是否有可能使用日期和时间(无秒)来识别区域设置日历?

要点: 当语言环境是德语时,我希望dd.mm.yyyy HH:mm。当语言环境是英语时,我希望mm/dd/yyyy HH:mm

1 个答案:

答案 0 :(得分:2)

将pattern属性挂钩到bean方法,该方法返回每个给定语言环境所需的模式。

<p:calendar pattern="#{bean.localePattern}">

public String getLocalePattern() {
    Locale locale = FacesContext.getCurrentInstance().getViewRoot().getLocale();
    if (Locale.GERMAN.equals(locale)) {
        return "dd.MM.yyyy HH:mm";
    } else if (Locale.ENGLISH.equals(locale)) {
        return "MM/dd/yyy HH:mm";
    }else {
        //return default pattern...
    }
}

编辑:Jaspers建议利用本地化资源包是一个很好的建议(如果您已经/计划使用JSF内置的本地化功能)。