I'm trying to completely change the datasource from hsqldb
to Oracle.
I have a problem with timer persistence. I've changed the name
of the datasource in ejb-deployer.xml and modified the CREATE
TABLE statement to:
CREATE TABLE TIMERS (
TIMERID VARCHAR2(50) NOT NULL,
TARGETID VARCHAR2(50) NOT NULL,
INITIALDATE TIMESTAMP NOT NULL,
INTERVAL NUMBER(19),
INSTANCEPK BLOB,
INFO BLOB,
CONSTRAINT TIMERS_PK PRIMARY KEY (TIMERID)
)
But it don't works... the table have been created succesfully but Jboss can't create timers...
I get the following exception:
2004-10-28 15:46:36,812 ERROR [org.jboss.ejb.txtimer.TimerServiceImpl] Cannot create txtimer
java.lang.IllegalStateException: Unable to persist timer
at org.jboss.ejb.txtimer.DatabasePersistencePolicy.insertTimer(DatabasePersistencePolicy.java:137)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
....
Caused by: java.sql.SQLException: Invalid column type
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:227)
at oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:7508)
What's the problem with the scheme above?
Thx