You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@olingo.apache.org by "Ramesh Reddy (JIRA)" <ji...@apache.org> on 2016/02/12 16:30:18 UTC

[jira] [Resolved] (OLINGO-864) EdmDate and EdmTimeOfDay output in local timezone

     [ https://issues.apache.org/jira/browse/OLINGO-864?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ramesh Reddy resolved OLINGO-864.
---------------------------------
    Resolution: Fixed

Thanks [~chrisam] for the feedback. Merged into master.

> EdmDate and EdmTimeOfDay output in local timezone
> -------------------------------------------------
>
>                 Key: OLINGO-864
>                 URL: https://issues.apache.org/jira/browse/OLINGO-864
>             Project: Olingo
>          Issue Type: Bug
>          Components: odata4-commons
>    Affects Versions: (Java) V4 4.0.0-beta-01
>            Reporter: Ramesh Reddy
>            Assignee: Ramesh Reddy
>            Priority: Critical
>             Fix For: (Java) V4 4.2.0
>
>
> EdmDate and EdmTimeOfDay both assume GMT for incoming string values - however when the convert from Java objects to string they use the local/default Calendar. 
> OData TC says  parsing Date or Time should be exactly same in every time zone.
> This highlights the issue with EdmDate:
> TimeZone.setDefault(TimeZone.getTimeZone("GMT-1"));
> java.sql.Timestamp date = EdmDate.getInstance().valueOfString("2000-01-01", true, 4000, 0, 0, true, java.sql.Timestamp.class);
> assertEquals("1999-12-31 23:00:00.0", date.toString());
> String val = EdmDate.getInstance().valueToString(date, true, 4000, 0, 0, true);
> assertEquals("2000-01-01", date.toString());
> The last line fails because the date will be "1999-12-31" instead.
> Linked issue at https://issues.jboss.org/browse/TEIID-3938



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)