Re: Problems with Date in Cayenne 2.0.4

From: Alessio Giovanni Baroni (alessiogiovanni.baron..mail.com)
Date: Wed Jan 28 2009 - 12:31:32 EST

  • Next message: Joe Baldwin: "Re: Problems with Date in Cayenne 2.0.4"

    Nothing, returns an exception ("getTimestamp is not valid for getT4CNumber
    .....").
    If I use "TO_CHAR", there is another problem, because when I do get(...)
    from DataObject, Cayenne execute
    a query, not equal as the query in ctxt.performQuery(Bar.class,
    "SELEC........"); Cayenne not save the TO_CHAR!

    Help?

    Thanks.

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

    > java.sql.Timestamp extends java.util.Date, so it is ok.
    >
    > (and in any event doublecheck that the column in a table for the Bar entity
    > is mapped as TIMESTAMP).
    >
    > Andrus
    >
    >
    > On Jan 28, 2009, at 5:34 PM, Alessio Giovanni Baroni wrote:
    >
    > 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 - 12:32:06 EST