Ramesh Reddy created OLINGO-864:
-----------------------------------

             Summary: 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)

Reply via email to