Hello, 

Again me for another problem !!!

During the creation of the bean (Home.Create), I have a ClassCastException :
java.lang.Long  !!

My bean has a primary key of the type Long ! 
I use JBoss and JAWS (CMP) with an Access Database.

It sounds that the ejb-jar file is right.

The error occur during a call to : myHome.create();
I know it call the method ejbCreate() successfully, but after I have the
crash

I have the following corresponding methods :
-----------------------------------------------------------------

ODATAServicesRegistryHome
 > ODATAServicesRegistryBI Create()
 > ODATAServicesRegistryBI findByPrimaryKey(Long ...)

ODATAServicesRegistryBean
- Long ejbCreate()
- public Long PrimaryKey;

ejb-jar.xml
---------------
<primkey-field>PrimaryKey</primkey-field>
<primary-key-class>java.lang.Long</primary-key-class>
<cmp-field><field-name>PrimaryKey</field-name></cmp-field>

The DB file
------------------
I have create a database file with a table named ODATAServicesRegistry and 2
fields :
- PrimaryKey : Numeric
- ServicesState : Text

And the JBoss log 
---------------------------
[Default] jBoss 2.0 FINAL Started
[ODATAServicesRegistry] [ODATAServicesRegistry] - ejbCreate() - begin
[ODATAServicesRegistry] [ODATAServicesRegistry] - ejbCreate() - PrimaryKey =
1
[ODATAServicesRegistry] [ODATAServicesRegistry] - ejbCreate() - end
[JAWS] java.lang.ClassCastException: java.lang.Long
[JAWS]  at sun.jdbc.odbc.JdbcOdbcPreparedStatement.setObject(Unknown Source)
[JAWS]  at sun.jdbc.odbc.JdbcOdbcPreparedStatement.setObject(Unknown Source)
[JAWS]  at
org.jboss.minerva.jdbc.PreparedStatementInPool.setObject(PreparedStatementIn
Pool.java:281)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.setParameter(JDBCCommand.java:31
4)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.setPrimaryKeyParameters(JDBCComm
and.java, Compiled Code)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCBeanExistsCommand.setParameters(JDBCBean
ExistsCommand.java:60)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute(JDBCCommand.java:157
)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCBeanExistsCommand.execute(JDBCBeanExists
Command.java:46)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCreateEntityCommand.execute(JDBCCreateEn
tityCommand.java, Compiled Code)
[JAWS]  at
org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.createEntity(JAWSPersisten
ceManager.java:122)
[JAWS]  at
org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManag
er.java:156)
[JAWS]  at
org.jboss.ejb.EntityContainer.createHome(EntityContainer.java:441)
[JAWS]  at java.lang.reflect.Method.invoke(Native Method)
[JAWS]  at
org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContaine
r.java:639)
[JAWS]  at
org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySync
hronizationInterceptor.java:160)
[JAWS]  at
org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInt
erceptor.java:86)
[JAWS]  at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:135)
[JAWS]  at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.
java:263)
[JAWS]  at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:86)
[JAWS]  at
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.jav
a:126)
[JAWS]  at
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java,
Compiled Code)
[JAWS]  at
org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:316)
[JAWS]  at
org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome(JRMPContai
nerInvoker.java:143)
[JAWS]  at java.lang.reflect.Method.invoke(Native Method)
[JAWS]  at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
[JAWS]  at sun.rmi.transport.Transport$1.run(Unknown Source)
[JAWS]  at java.security.AccessController.doPrivileged(Native Method)
[JAWS]  at sun.rmi.transport.Transport.serviceCall(Unknown Source)
[JAWS]  at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
[JAWS]  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown
Source)
[JAWS]  at java.lang.Thread.run(Unknown Source)
[JAWS] java.lang.ClassCastException: java.lang.Long
[JAWS]  at sun.jdbc.odbc.JdbcOdbcPreparedStatement.setObject(Unknown Source)
[JAWS]  at sun.jdbc.odbc.JdbcOdbcPreparedStatement.setObject(Unknown Source)
[JAWS]  at
org.jboss.minerva.jdbc.PreparedStatementInPool.setObject(PreparedStatementIn
Pool.java:281)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.setParameter(JDBCCommand.java:31
4)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCreateEntityCommand.setParameters(JDBCCr
eateEntityCommand.java, Compiled Code)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute(JDBCCommand.java:157
)
[JAWS]  at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCreateEntityCommand.execute(JDBCCreateEn
tityCommand.java, Compiled Code)
[JAWS]  at
org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.createEntity(JAWSPersisten
ceManager.java:122)
[JAWS]  at
org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManag
er.java:156)
[JAWS]  at
org.jboss.ejb.EntityContainer.createHome(EntityContainer.java:441)
[JAWS]  at java.lang.reflect.Method.invoke(Native Method)
[JAWS]  at
org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContaine
r.java:639)
[JAWS]  at
org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySync
hronizationInterceptor.java:160)
[JAWS]  at
org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInt
erceptor.java:86)
[JAWS]  at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:135)
[JAWS]  at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.
java:263)
[JAWS]  at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:86)
[JAWS]  at
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.jav
a:126)
[JAWS]  at
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java,
Compiled Code)
[JAWS]  at
org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:316)
[JAWS]  at
org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome(JRMPContai
nerInvoker.java:143)
[JAWS]  at java.lang.reflect.Method.invoke(Native Method)
[JAWS]  at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
[JAWS]  at sun.rmi.transport.Transport$1.run(Unknown Source)
[JAWS]  at java.security.AccessController.doPrivileged(Native Method)
[JAWS]  at sun.rmi.transport.Transport.serviceCall(Unknown Source)
[JAWS]  at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
[JAWS]  at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown
Source)
[JAWS]  at java.lang.Thread.run(Unknown Source)

I hope that someone can help me, because after several days I cannot find
why I have this error !!
(Also I cannot directly debug in JBoss because we use VA 3.5 !!)

Thanks a lot for your help

Christophe



--
--------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
List Help?:          [EMAIL PROTECTED]

Reply via email to