ColdFusion 2018 и BlazeDS DateTime Parse Error для трехзначного кода перехода на летнее время - PullRequest
0 голосов
/ 13 февраля 2019

При использовании BlazeDS (приложение Flex) для отправки дат в CF, когда отправленная дата находится в пределах перехода на летнее время, CF завершается с ошибкой:

[BlazeDS] Ошибка десериализации клиентского сообщения.coldfusion.runtime.locale.CFLocaleBase $ InvalidDateTimeException: 8 июля 2016 г. 18:00:00 EDT - недопустимая строка даты или времени.

Я предполагаю, что это, вероятно, вызвано CF 2018 с использованиемJava 10, которая имеет проблему в CLDR с использованием трех символьных форматов часовых поясов.(Мы в магазине США).Даже при стандартном переключателе JVM -Djava.locale.providers=COMPAT,SPI он не работает, каждый раз выходит из строя.

У кого-нибудь есть идеи, как решить?Я собираюсь попробовать использовать отдельную JVM в качестве теста, но не уверен, сработает ли это или нет.Я подозреваю, что BlazeDS не очень хорошо работает с JVM (возможно, использует свой собственный).

Вот zip-файл, содержащий пример проекта, см. Подпапку «ДОПОЛНИТЕЛЬНО» для журналов, снимок экрана прокси-дампа AMF и т. Д.Скопируйте папку Additional -> remotingDateTest в корневой веб-каталог и настройте RemoteObject в файле приложения проекта ... https://www.dropbox.com/s/xte4bqrkp7loefi/Remoting%20Test.zip?dl=0

1 Ответ

0 голосов
/ 15 февраля 2019

Adobe фактически предоставила мне ответ: добавьте следующее в мои аргументы JVM (это работает!):

-Duser.timezone=NewYork
...