p: поддержка календаря для локали
У меня возникает проблема, когда я пытаюсь добавить поддержку локали в календарь JSF primefaces.
Я передаю локаль и также добавил файл локали js для поддержки пользовательского интерфейса календаря. Но когда пользователь выбирает дату из календаря и после этого у меня есть ниже код Java, чтобы проанализировать дату и проверить дату.
Текущий язык: пт Предположим, пользователь выбрал "21-го-2015" из календаря пользовательского интерфейса. Но для формата даты Java
"21-Aug-2015" in fr locale is "21-août-2015".
Так же:
"10-Apr-2019" is "10-avr.-2019"
Я использую приведенный ниже код и выбрал локаль "fr":
Date date = null;
boolean isDateValid = false;
for (String pattern : patterns) {
DateFormat df = new SimpleDateFormat(pattern, locale);
try {
date = df.parse(value);
String newDateString = df.format(date);
System.out.println(newDateString);
isDateValid = true;
break;
} catch (ParseException e) {
e.printStackTrace();
}
}
System.out.println("Date : " + date);
Итак, основная причина, которую я обнаружил, заключается в том, что java DateFormat разбирает несовпадение. то есть: когда локаль французская.
Java-разбор:
Для локали "fr" -
Aug => "août" вместо "Aoû"
Апр => "авр." вместо "авр"