Это потому, что есть разница во времени между вашим флеш-клиентом и вашим сервером.Предположим, что: GMT + X: часовой пояс вашего сервера GMT + Y: часовой пояс вашего клиента
Правильный способ решения вашей проблемы - определить фиксированный часовой пояс в вашем формате сортировки (XML, AMF ...)и конвертируйте даты в правильных местах в этот часовой пояс.
Например:
Когда вы отправляете сообщение от вашего клиента на сервер: Клиент GMT + Y -> преобразование даты на стороне клиентав GMT + 0 -> AMF GMT + 0 -> преобразование на стороне сервера из GMT + 0 в GMT + X -> сервер GMT + X
Когда сервер отправляет дату клиенту: Сервер GMT + X-> Преобразование на стороне сервера в GMT + 0 -> AMF GMT + 0 -> Преобразование на стороне клиента в GMT + Y -> Клиентское время GMT + Y
С Granite это означает, что есть 2 исправления: изменениеGroovy шаблоны для преобразования даты на GMT + 0 на стороне клиента и добавления конвертера на стороне сервера (Дата конвертируется в Дата, но с преобразованием часового пояса).Я уже сделал этот патч на многих проектах Flex, он работает отлично.