Java devuelve incorrectamente el objeto Fecha a Flex

Estoy usando Flex, GraniteDS y Javа. Flex está enviando la fecha correctamente en el horario de verano, por ejemplo, "10 de septiembre 10:00:00 UTC-7", pero después de todo, estoy recibiendo la misma fecha pero en el horario estándar "10 de septiembre 11: 00: 00: 00 UTC-8 ". Según tengo entendido, GraniteDS está deserializando la fecha de Java incorrectamente. ¿Alguna idea de cómo resolver esto?

Respuesta 1

Esto se debe a que hay una diferencia en las zonas horarias entre su cliente flash y su servidor. Supongamos que: GMT + X: zona horaria de su servidor GMT + Y: zona horaria de su cliente

La forma correcta de solucionar su problema es definir una zona horaria fija en su formato de clasificación (XML, AMF ...) y convertir sus fechas en los lugares correctos a esta zona horaria.

Por ejemplo:

Cuando envía un mensaje desde su cliente al servidor: Cliente GMT + Y -> Conversión de fecha del lado del cliente a GMT + 0 -> AMF GMT + 0 -> Conversión del lado del servidor de GMT + 0 a GMT + X -> Servidor GMT + X

Cuando el servidor envía una fecha al cliente: Servidor GMT + X -> Conversión del lado del servidor a GMT + 0 -> AMF GMT + 0 -> Conversión del lado del cliente a GMT + Y -> Cliente GMT + Y

Con Granite, significa que hay 2 soluciones para hacer: modificar las plantillas Groovy para la conversión de la fecha del lado del cliente a GMT + 0, y agregar un convertidor en el lado del servidor (Fecha convertida a fecha pero con conversión de zona horaria). Ya he hecho este parche en muchos proyectos Flex ahora, funciona perfectamente.

Respuesta: 2

No sé si esto resolverá su problema, pero tuve un problema similar con las fechas Flex hace un par de años.
Estaba obteniendo una tabla de una base de datos SQL a un SWF flexible a través de ColdFusion. Noté que la fecha se convierte de la zona horaria del servidor ColdFusion / Database a la zona horaria en la que se ejecuta la aplicación Flex. ¿Tal vez éste es el problema?

Lo resolví (aunque agregó una sobrecarga significativa) para agregar la diferencia de zona horaria y compensar la zona horaria en el extremo flexible

Respuesta: 3

Manejamos esto evitando el problema, formateamos todas las fechas como cadenas cuando se transmiten entre capas.

Respuesta: 4

¿Cuál es la mejor manera de pellizcar para hacer zoom en una vista de imagen en Android, porque he estado buscando esto durante mucho tiempo? ¿Hay algún tutorial o ejemplo? Solo quiero algunos consejos para guiarme en ...

¿Cómo podemos abrir el navegador a través del código Java ME en ubuntu os? Estoy usando el siguiente código String URL1 = "any url"; midlet.platformRequest (URL1); La línea anterior no abre el navegador en ...

Escribí un PhaseListener y me gustaría saber si es posible acceder a un controlador a través de él.

Hay una clase "Item" y tiene algunas clases asociadas llamadas Vehicle, Vmodel, Category, ItemName, Brand, SizeModel. Estas clases tienen identificaciones apropiadas y un nombre (por ejemplo, clase de vehículo, "vid" y "...