Hi Denis,

Please go ahead and file a JIRA. I was able to reproduce the problem so I briefly looked into it. If I'm not wrong, the problem should reproduce for dates that aren't picked using the dialog, i.e. dates that are predefaulted in the input, or hand-entered. When the user picks dates that are in the dialog, those dates have a millisecond value generated according to the application's timezone. But when the user hand-enters dates, the dates are created from strings according to the client's timezone leading to a discrepancy. So, in the example, "1/28/09" -> Javascript date 1/28/09 01:00 UTC + 1. When sent back to the server, the server takes the millisecond value and recreates according to the application timezone -> 1/27/09 20:00 UTC - 5. So, the 27th is highlighted.

The methods I looked at: _ldp on the client, CalendarUtils#_adjustTimeZone and ChooseDateRenderer#encodeAll on the server.

Thanks,
Yee-Wah

Denis Krukovsky wrote:
Hi Yee-Wah,

Thanks for the patch provided. I tested new 1.0.11 snapshot from Jan
28 and unfortunately that bug is still there. Would you suggest to
submit a bug into JIRA? If anybody knows what's the reason please let
me know.

Steps to reproduce:
 - run a server with timezone set to US Eastern Time (GMT-5).
 - Create a page with Trinidad input date and date picker popup.
 - Query the page from a browser on a machine with timezone set to
Central European Time (GMT+1).
 - Enter some date into input date field.
 - Click on datepicker icon.
 - Observe that date selected in datepicker is 1 day before the date
entered into inputdate field.

Thanks!


---------- Forwarded message ----------
From: Denis Krukovsky <dkrukov...@gmail.com>
Date: Wed, Jan 14, 2009 at 6:22 PM
Subject: Re: [Trinidad] Timezones - date picker popup shows a day before
To: MyFaces Discussion <users@myfaces.apache.org>


Hi, we tested with server running on current date (winter) with
timezone I provided earlier, and the user also has worked with days
from winter. So it can be like: server has 7 AM Jan 14, a client has
13:00 Jan 14.

And in a browser we have say Jan 14 in a date input field, and date
picker popup shows Jan 13 selected.

The JIRA issue provided seems to be about wrong day RETURNED from the
datepicker popup which we have not observed so far.

Thanks for your advice on this.

On Wed, Jan 14, 2009 at 6:09 PM, Yee-wah Lee <yee-wah....@oracle.com> wrote:
Hi Denis,

Can you give further detail on your example? What date is the server running
in, and what date does the user pick on the client?

A possibly related JIRA:
https://issues.apache.org/jira/browse/TRINIDAD-1349

Thanks,
Yee-Wah

Denis Krukovsky wrote:
Hi, we're having problems with Trinidad date picker popup. Our server
has timezone set as US Eastern time GMT-5. The server is queried from
a workstation with timezone set to Central European time GMT+1. Date
field is OK, but when its date picker pops up, the date selected there
is input date field value - 1 day.

This behavior gets fixed when we edit trinidad-config.xml and include
<time-zone>Etc/GMT-5</time-zone> (server timezone) there.
Unfortunately trinidad-config modification is not an option because
servers and timezones will change. I tried to supply inputDate
component with custom converter which returns server timezone from
getTimeZone() and getFormattingTimeZone(...) which doesn't help.

I also noted that in both cases - (1) no modification to
trinidad-config and the bug is there, and (2) trinidad-config modified
and bug gets fixed - the Trinidad date picker popup is being requested
with equal request string containing something like

/app/__ADFv__.jsf?_afPfm=-79d68df7&_t=cd&value=1231891200000&loc=en-US&enc=UTF-8",
i. e. the value parameter is same for both cases but datepicker gets
rendered differently.

This behavior is there with Trinidad 1.0.7 and 1.0.10 .

So is it a bug and does somebody knows a way to get it fixed? Thanks!

Denis.




--
Denis Krukovsky
http://blogoforum.com/

Reply via email to