Похоже, что Grails по умолчанию предоставляет дату, маршалированную в JSON как "EEE MMM dd HH: мм: сс z гггг" (например: сб. Янв. 05 00:02:00 CET 2019)
Еслиэта (строковая) дата используется в деятельности по созданию домена (создайте экземпляр того же класса домена с этой строковой датой в качестве даты), Grails не будет распознавать ее по умолчанию (хотя я думаю, что она должна логически принимать это).
Проблема заключается в том, что формат данных "EEE MMM dd HH: mm: ss z yyyy" не распознается ни в
grails.databinding.dateFormats = [
'EEE MMM dd HH:mm:ss z yyyy',
'dd/MM/yyyy HH:mm:ss',
'dd/MM/yyyy',
'yyyy-MM-dd HH:mm:ss',
'yyyy-MM-dd HH:mm:ss.S',
"yyyy-MM-dd'T'hh:mm:ss'Z'",
'dd.mm.yyyy',
'MMddyyyy'
]
, ни в @BindingFormat.Похоже, что для разбора 'EEE MMM dd HH: mm: ss z yyyy', также необходима локаль.Что-то вроде:
def dateFormat = "EEE MMM dd HH:mm:ss z yyyy";
SimpleDateFormat smpDF= new SimpleDateFormat( dateFormat, Locale.UK );
Есть ли способ передать местоположение, чтобы grails связывал эту дату, как она есть в строке?
Обновление: это Grails 3.3.9