Re: Problems with Date in Cayenne 2.0.4

From: Alessio Giovanni Baroni (alessiogiovanni.baron..mail.com)
Date: Wed Jan 28 2009 - 10:34:05 EST

  • Next message: Andrus Adamchik: "Re: Problems with Date in Cayenne 2.0.4"

    But if I have SQLTemplate(Bar.class, .....), and in class Bar I set the
    field Foo as Date, isn't an error cast it to java.lang.Timestamp??

    Thanks.

    2009/1/28 Andrus Adamchik <andru..bjectstyle.org>

    > My (admittedly novice) solution was to map it via Modeler to a TIMESTAMP.
    >>
    >
    >
    > This is actually a correct solution. Only if I am not mistaken it doesn't
    > work 100% on 2.0.x (IIRC it works for SelectQuery, but not SQLTemplate). In
    > 3.0 it should work with SQLTemplate as well.
    >
    > Andrus
    >
    >
    >
    > On Jan 28, 2009, at 5:12 PM, Joe Baldwin wrote:
    >
    > Andrus,
    >>
    >> I looked up the Oracle Date definition and it does in fact keep time info
    >> in the database. My (admittedly novice) solution was to map it via Modeler
    >> to a TIMESTAMP. Does this reveal the same problem with the Oracle adapter
    >> as mapping it via Modeler-DATE?
    >>
    >> Joe
    >>
    >>
    >> On Jan 28, 2009, at 9:58 AM, Andrus Adamchik wrote:
    >>
    >> I guess that's how Oracle driver returns the metadata for the DATE column
    >>> in the ResultSet. The workaround is to use #result() directive in the SQL:
    >>>
    >>> http://cayenne.apache.org/doc20/scripting-sqltemplate.html
    >>>
    >>> Hope this helps,
    >>>
    >>> Andrus
    >>>
    >>> On Jan 28, 2009, at 4:48 PM, Alessio Giovanni Baroni wrote:
    >>>
    >>> Hi to all,
    >>>> I have the following code:
    >>>>
    >>>> .............
    >>>> query = new SQLTemplate("SELECT FOO FROM BAR");
    >>>> results = ctxt.performQuery(Bar.class, query);
    >>>> for(int i = 0; i < results.size() - 1; ++i)
    >>>> {
    >>>> Bar f = (Bar)results.get(i);
    >>>> ...... (f.getFoo());
    >>>> ....................
    >>>> }
    >>>>
    >>>> In the Oracle DB the field FOO is a DATE and I map it to java.util.Date.
    >>>> When I do .getFoo(), the date that I have is without the
    >>>> hours/minutes/seconds.
    >>>> Why? How do I resolve it?
    >>>>
    >>>> Thanks.
    >>>>
    >>>
    >>>
    >>
    >>
    >



    This archive was generated by hypermail 2.0.0 : Wed Jan 28 2009 - 10:34:37 EST