ICU4J не работает на Glassfish и JSP с персидским календарем - PullRequest
0 голосов
/ 25 марта 2019

У меня проблема с библиотекой icu4j версии 63 и 64 со glassfish 5.1 и jsp. Когда я использую свой код в обычном проекте java, он работает, но когда я использую его в динамическом проекте веб-страницы с jsp, он не работает и показывает символ как английский дата не джалали дата! например : я использую это:


Calendar calendar = Calendar.getInstance(locale);
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL, locale);

System.out.println(df.format(calendar));

консольное шоу: ۱۳۹۸ فروردین ۵, دوشنبه

сослаться на этот вопрос ответ: Хороший конвертер дат для календаря Jalali в Java?

но когда я использую этот код в своем проекте веб-страницы с java-классом и jsp, код:

JAVA CLASS CODE 
For test : 
ULocale locale = new ULocale("fa_IR@calendar=persian");

Calendar calendar = Calendar.getInstance(locale);
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL, locale);
infoMap.put("date" , String.valueOf(df.format(calendar)));

и получите его на моей странице jsp:

...
<%@ page contentType="text/html; charset=UTF-8" %>
...
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
...
 <p><%=infoMap.get("date") %></p>

это показывают: دوشنبه, مارس ۲۵, ۲۰۱۹

как вы видите, моя цель ۱۳۹۸ فروردین ۵, دوشنبه нет دوشنبه, مارس ۲۵, ۲۰۱۹

о версии Glassfish 5.1 о версии Java 1.8 о версии icu4j

<groupId>com.ibm.icu</groupId>
    <artifactId>icu4j</artifactId>
    <version>63.1</version>

и ПК работает на localTime english (я знаю, что это не проблема) Windows 10 LTSC: (я использую Centos и Ubuntu, но не работает, как я хочу)

так что я делаю не так или что я скучаю по JSP? пожалуйста, помогите мне улучшить мой код, спасибо

...