I noticed that as well while working on some services that use DateTime quite a bit. There are some other issues with DateTime in that xsd__dateTime is defined as 'tm' while generated code tends to treat xsd__dateTime as 'tm*'.

Anyhow, the problem is that after normalizing to UTC during deserialization, the offset is computed incorrectly and local daylight savings is not accounted for.

Attached is a diff/patch of my version (which works in my limited testing) against the current source. I also removed some unused and apparently redundant lines of code. I suppose I should look at the serialization code as well, but I haven't yet.



Dave Richards


----- Original Message ----- From: "Andrew Perry2" <[EMAIL PROTECTED]>
To: "Apache AXIS C Developers List" <[email protected]>
Sent: Wednesday, April 06, 2005 8:38 AM
Subject: DateTimeType problem.


Hi Dushshantha,

I have started running the Axis C++ server and have noticed problems with
the DateTimeType.
More specifically in AxisBench the client sends the DateTimeType

<ns1:DateTimeType>2004-11-12T07:58:43+01:00</ns1:DateTimeType>

The service is just an echo type service so I would expect the same date to
come back.

The reponse from the server for DateTimeType is

<ns1:DateTimeType>2004-11-12T09:58:43+01:00</ns1:DateTimeType>

Which as you can see is 2 hours ahead.

Then when the client Deserializes this it outputs

DateTimeType Fri Nov 12 11:58:43 2004

Which as you can see is another 2 hours ahead.

The original request indicates GMT/UTC + 1 hour, for daylight
saving/British Summer Time (BST)

Have you seen any such discrepencies when running AxisBench, or other test?

To me it looks like the server is adding the time difference from GMT
instead of subtracting it.

Any thoughts?

Regards,


Andrew Perry IBM Web Services Client for C/C++ [EMAIL PROTECTED] Mail Point 127 IBM UK Laboratories. Hursley Park, Winchester, Hants. SO21 2JN Tel. Internal 249828 External + 44 (0)1962 819828 Fax. + 44(0)1962 818080


Attachment: DateTime.cpp.diff
Description: Binary data



Reply via email to