I had a similar problem with OJB+HSQLDB. This seems to work: /** * Birth Date * * @ojb.field * column = "birthdate" * jdbc-type="TIMESTAMP" * conversion = "org.apache.ojb.broker.accesslayer.conversions.JavaDate2SqlTimestampFieldCon version" */ private java.util.Date birthdate;
Even though it's just a date and not a timestamp, the conversion makes it happy - Fred -----Original Message----- From: David Zejda [mailto:[EMAIL PROTECTED] Sent: Wednesday, June 09, 2004 12:09 PM To: OJB Users List Subject: HSQLDB + DATE type I have a class Email /** * @ojb.field */ private Date date; ... transformed into repository <field-descriptor name="date" column="date" jdbc-type="DATE" > </field-descriptor> and after calling broker.store() it says: SQL failure while insert object data for class oit.Email, PK of the given object is [ id=1], object was [EMAIL PROTECTED], exception message is [Wrong data type ] org.apache.ojb.broker.PersistenceBrokerSQLException: SQL failure while insert ob ject data for class oit.Email, PK of the given object is [ id=1], object was oit [EMAIL PROTECTED], exception message is [Wrong data type] at org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAc cessImpl.java:242) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(Persistenc eBrokerImpl.java:1620) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBro kerImpl.java:1537) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBro kerImpl.java:683) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeAndLinkOneToMan y(PersistenceBrokerImpl.java:913) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeCollections(Per sistenceBrokerImpl.java:783) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(Persistenc eBrokerImpl.java:1644) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBro kerImpl.java:1537) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBro kerImpl.java:683) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(Delegati ngPersistenceBroker.java:174) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(Delegati ngPersistenceBroker.java:174) at oit.Main.newAddress(Unknown Source) at oit.Main.<init>(Unknown Source) at oit.Main.main(Unknown Source) Caused by: java.sql.SQLException: Wrong data type at org.hsqldb.Trace.getError(Unknown Source) at org.hsqldb.Trace.error(Unknown Source) at org.hsqldb.Column.convertObject(Unknown Source) at org.hsqldb.jdbcPreparedStatement.setObject(Unknown Source) at org.apache.ojb.broker.platforms.PlatformDefaultImpl.setObjectForState ment(PlatformDefaultImpl.java:227) at org.apache.ojb.broker.accesslayer.StatementManager.bindInsert(Stateme ntManager.java:449) at org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAc cessImpl.java:193) ... 13 more So, is there any flaw in combination HSQLDB and Date? I guess, it would be possible to provide a custom RowReader or something and store dates in e.g. VARCHAR column.., but it's only a quick hack, not a solution. Thanks for suggestions David --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
