I get an invalid assigment exception from Solid when I try to store the following date in the table below:
 
Inserting: VARCHAR      : "Piet"
           DATETYPE     : "Thu Aug 09 00:00:00 CEST 2001" (Only date part is used)
           TIMETYPE     : "Thu Jan 01 13:01:00 CET 1970"  (Only time part is used)
           TIMESTAMPTYPE"Thu Aug 09 13:01:00 CEST 2001"
 
In TABLE DateTimeMedley (
    id                             VARCHAR (40)                   NOT NULL,
    dateType                       DATE                           NULL,
    timeType                       TIME                           NULL,
    timestampType                  TIMESTAMP                      NULL,
    PRIMARY KEY (id)
)
 
I've debugged JBoss and saw that the getResult method in JdbcUtil.java throws an Invocation target exception when it tries to invoke the method getTimeStamp(int) for the java type java.util.Date on the result set. After that it tries to do a binary read of the data by calling getBytes on the resultset. This method in the Solid JDBC driver throws the invalid assignment exception. My question is why the invocation of the getTimeStamp fails? See stack trace below:
 
Thanks,
 
Raymond
 
 
2002-12-12 16:37:58,807 TRACE [EjbTier] SADateTimeMedley.validateData(com.alturaTest.myAppl.ejb.datetimemedley.DateTimeMedleyUpdateObject updateObject)
2002-12-12 16:37:58,807 DEBUG [EjbTier] Updating com.alturaTest.myAppl.ejb.datetimemedley.DateTimeMedleyDataObject...
2002-12-12 16:37:58,807 DEBUG [org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.DateTimeMedley] Create: pk=id(Piet)
2002-12-12 16:37:58,807 DEBUG [org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.DateTimeMedley] Executing SQL: SELECT COUNT(*) FROM DATETIMEMEDLEY WHERE id=?
2002-12-12 16:37:58,807 ERROR [STDERR] SolidStatement.dTypeMap(1, false)
2002-12-12 16:37:58,807 ERROR [STDERR] SolidResultSet.s_getSolidTA(1)
2002-12-12 16:37:58,807 ERROR [STDERR] SolidStatement.dTypeMap(1, true)
2002-12-12 16:37:58,823 ERROR [STDERR]
Solid Column Properties
-----------------------
type      : 0
sqltype   : TYPEFLOAT
len       : 10
scale     : 0
nullable  : true
precision : 10
name      : COUNT(*)
basename  : null
flags     : 0
tabname   : null
tabschema : null
tabcatalog: null
2002-12-12 16:37:58,823 ERROR [STDERR] s_solidTA_ != null
2002-12-12 16:37:58,823 DEBUG [org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.DateTimeMedley] Executing SQL: INSERT INTO DATETIMEMEDLEY (id, dateType, timeType, timestampType) VALUES (?, ?, ?, ?)
2002-12-12 16:37:58,823 ERROR [STDERR] SolidStatement.dTypeMap(1, false)
2002-12-12 16:37:58,823 ERROR [STDERR] SolidStatement.dTypeMap(2, false)
2002-12-12 16:37:58,838 ERROR [STDERR] SolidStatement.dTypeMap(3, false)
2002-12-12 16:37:58,838 ERROR [STDERR] SolidStatement.dTypeMap(4, false)
2002-12-12 16:37:58,838 DEBUG [org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.DateTimeMedley] Rows affected = 1
2002-12-12 16:37:58,885 TRACE [EjbTier] DateTimeMedleyBean.ejbPostCreate(DateTimeMedleyUpdateObject updateObject)
2002-12-12 16:37:58,885 TRACE [EjbTier] DateTimeMedleyBean.ejbStore(): key=id(Piet)
2002-12-12 16:37:58,901 DEBUG [org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.DateTimeMedley] Executing SQL: SELECT dateType, timeType, timestampType FROM DATETIMEMEDLEY WHERE (id=?)
2002-12-12 16:37:58,901 ERROR [STDERR] SolidStatement.dTypeMap(1, false)
2002-12-12 16:37:58,901 ERROR [STDERR] [MY JBOSS TRACE] getResult: index=1, javaType=java.util.Date
2002-12-12 16:37:58,901 ERROR [STDERR] [MY JBOSS TRACE] Got method public abstract java.sql.Timestamp java.sql.ResultSet.getTimestamp(int) throws java.sql.SQLException
2002-12-12 16:37:58,901 ERROR [STDERR] [MY JBOSS TRACE] Invoking...
2002-12-12 16:37:58,901 ERROR [STDERR] SolidResultSet.s_getSolidTA(1)
2002-12-12 16:37:58,901 ERROR [STDERR] SolidStatement.dTypeMap(1, true)
2002-12-12 16:37:58,901 ERROR [STDERR]
Solid Column Properties
-----------------------
type      : 0
sqltype   : TYPEBYTES
len       : 10
scale     : 0
nullable  : true
precision : 10
name      : DATETYPE
basename  : null
flags     : 0
tabname   : null
tabschema : null
tabcatalog: null
2002-12-12 16:37:58,932 ERROR [STDERR] s_solidTA_ != null
2002-12-12 16:37:58,932 ERROR [STDERR] SolidTA.getTimestamp(SolidResultSet solidresultset)
2002-12-12 16:37:58,932 ERROR [STDERR] [MY JBOSS TRACE] Caught InvocationTargetException null
2002-12-12 16:37:58,932 ERROR [STDERR] SolidResultSet.getBytes(int 1)
2002-12-12 16:37:58,932 ERROR [STDERR] SolidResultSet.s_getSolidTA(1)
2002-12-12 16:37:58,932 ERROR [STDERR] SolidStatement.dTypeMap(1, true)
2002-12-12 16:37:58,948 ERROR [STDERR]
Solid Column Properties
-----------------------
type      : 0
sqltype   : TYPEBYTES
len       : 10
scale     : 0
nullable  : true
precision : 10
name      : DATETYPE
basename  : null
flags     : 0
tabname   : null
tabschema : null
tabcatalog: null
2002-12-12 16:37:58,948 ERROR [STDERR] s_solidTA_ != null
2002-12-12 16:37:58,963 ERROR [org.jboss.ejb.plugins.LogInterceptor] EJBException, causedBy:
java.sql.SQLException: [Solid JDBC 02.10.0054]  Invalid Assignment
 at solid.jdbc.SolidTA.s_InvAss(SolidTA.java:259)
 at solid.jdbc.SolidTA.getBytes(SolidTA.java:121)
 at solid.jdbc.SolidResultSet.getBytes(SolidResultSet.java:512)
 at org.jboss.ejb.plugins.cmp.jdbc.JDBCUtil.getResult(JDBCUtil.java:307)
 at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadArgumentResults(JDBCAbstractCMPFieldBridge.java:350)
 at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadInstanceResults(JDBCAbstractCMPFieldBridge.java:304)
 at org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:147)
 at org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:62)
 at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadEntity(JDBCStoreManager.java:572)
 at org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity(CMPPersistenceManager.java:410)
 at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.loadEntity(CachedConnectionInterceptor.java:353)
 at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:262)
 at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
 at org.jboss.ejb.plugins.EntityReentranceInterceptor.invoke(EntityReentranceInterceptor.java:90)
 at org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:152)
 at org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLockInterceptor.java:107)
 at org.jboss.ejb.plugins.EntityCreationInterceptor.invoke(EntityCreationInterceptor.java:69)
 at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:107)
 at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:178)
 at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:60)
 at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:130)
 at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:203)
 at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:493)
 at org.jboss.ejb.Container.invoke(Container.java:712)
 at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1058)
 at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
 at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:98)
 at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:102)
 at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:77)
 at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:80)
 at org.jboss.proxy.ejb.EntityInterceptor.invoke(EntityInterceptor.java:116)
 at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:76)
 at $Proxy34.getCreationConstraintErrors(Unknown Source)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.setData(DateTimeMedleyDateTimeMedleyBusinessFacade.java:171)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.storeCreatedCollection(DateTimeMedleyDateTimeMedleyBusinessFacade.java:572)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.doStore(DateTimeMedleyDateTimeMedleyBusinessFacade.java:214)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.store(DateTimeMedleyDateTimeMedleyBusinessFacade.java:129)
 at com.alturaTest.myAppl.web.DateTimeMedleyStoreAction.doAction(DateTimeMedleyStoreAction.java:150)
 at com.alturaTest.myAppl.web.DateTimeMedleyStoreAction.perform(DateTimeMedleyStoreAction.java:107)
 at org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1786)
 at com.compuware.strutsext.ControllerServlet.processActionPerform(ControllerServlet.java:75)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1585)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:491)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:366)
 at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:284)
 at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:577)
 at org.mortbay.http.HttpContext.handle(HttpContext.java:1674)
 at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:544)
 at org.mortbay.http.HttpContext.handle(HttpContext.java:1624)
 at org.mortbay.http.HttpServer.service(HttpServer.java:875)
 at org.jboss.jetty.Jetty.service(Jetty.java:541)
 at org.mortbay.http.HttpConnection.service(HttpConnection.java:785)
 at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:935)
 at org.mortbay.http.HttpConnection.handle(HttpConnection.java:802)
 at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:200)
 at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:294)
 at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:743)
 at java.lang.Thread.run(Thread.java:536)
2002-12-12 16:37:59,166 WARN  [org.jboss.jbossweb] WARNING: action: DateTimeMedley.actionStore
com.compuware.alturadev.ejb.AlturaRuntimeException
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.setData(DateTimeMedleyDateTimeMedleyBusinessFacade.java:199)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.storeCreatedCollection(DateTimeMedleyDateTimeMedleyBusinessFacade.java:572)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.doStore(DateTimeMedleyDateTimeMedleyBusinessFacade.java:214)
 at com.alturaTest.myAppl.ejb.DateTimeMedleyDateTimeMedleyBusinessFacade.store(DateTimeMedleyDateTimeMedleyBusinessFacade.java:129)
 at com.alturaTest.myAppl.web.DateTimeMedleyStoreAction.doAction(DateTimeMedleyStoreAction.java:150)
 at com.alturaTest.myAppl.web.DateTimeMedleyStoreAction.perform(DateTimeMedleyStoreAction.java:107)
 at org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1786)
 at com.compuware.strutsext.ControllerServlet.processActionPerform(ControllerServlet.java:75)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1585)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:491)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:366)
 at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:284)
 at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:577)
 at org.mortbay.http.HttpContext.handle(HttpContext.java:1674)
 at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:544)
 at org.mortbay.http.HttpContext.handle(HttpContext.java:1624)
 at org.mortbay.http.HttpServer.service(HttpServer.java:875)
 at org.jboss.jetty.Jetty.service(Jetty.java:541)
 at org.mortbay.http.HttpConnection.service(HttpConnection.java:785)
 at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:935)
 at org.mortbay.http.HttpConnection.handle(HttpConnection.java:802)
 at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:200)
 at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:294)
 at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:743)
 at java.lang.Thread.run(Thread.java:536)


--

The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.


Reply via email to