Bugs item #562004, was opened at 2002-05-29 14:11
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=376685&aid=562004&group_id=22866

Category: JBossCMP
Group: CVS HEAD
Status: Open
Resolution: None
Priority: 5
Submitted By: Justin Casp (jcasp)
Assigned to: Nobody/Anonymous (nobody)
Summary: 'Error setting column value' using dependent value classes with existing db 
records

Initial Comment:
I posted this problem a few weeks ago on jboss.org forums, but it's down 
right  
now so I can't reference that post.  I figured out how to create a simple test  
case that reliably reproduces the problem.  
  
The error message 'Error setting column value' occurs when I have an  
existing CMP bean that reads existing records from a datasource.  The bean  
uses a dependent value class, although I'm not sure if this problem is  
specific to dependent value classes or just any cmp bean with fields 
mapped  
to columns.  
If I create the record externally (e.g., using psql, the postgres command line  
tool) and only set a few of the columns to non-null values, when I attempt to  
load that bean instance with a finder, jboss throws the following exception 
on  
the server:  
 
12:03:56,650 ERROR [STDERR] java.lang.NullPointerException  
12:03:56,652 ERROR [STDERR]     at  
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  
12:03:56,652 ERROR [STDERR]     at  
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)  
12:03:56,653 ERROR [STDERR]     at  
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  
12:03:56,653 ERROR [STDERR]     at  
java.lang.reflect.Method.invoke(Method.java:324)  
12:03:56,653 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCTypeComplexProperty.setColumnValue(JDBCTypeComplexProperty.java:142)
  
12:03:56,654 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCTypeComplex.setColumnValue(JDBCTypeComplex.java:158)
  
12:03:56,654 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCTypeComplex.setColumnValue(JDBCTypeComplex.java:133)
  
12:03:56,654 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadArgumentResults(JDBCAbstractCMPFieldBridge.java:352)
  
12:03:56,655 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadInstanceResults(JDBCAbstractCMPFieldBridge.java:304)
  
12:03:56,655 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:140)
  
12:03:56,655 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:62)
  
12:03:56,655 ERROR [STDERR]     at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadEntity(JDBCStoreManager.java:496)  
12:03:56,656 ERROR [STDERR]     at  
org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity(CMPPersistenceManager.java:410) 
 
12:03:56,656 ERROR [STDERR]     at  
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.loadEntity(CachedConnectionInterceptor.java:314)
  
12:03:56,656 ERROR [STDERR]     at  
org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:310)
  
12:03:56,657 ERROR [STDERR]     at  
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:147)
  
12:03:56,657 ERROR [STDERR]     at  
org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:193)
  
12:03:56,657 ERROR [STDERR]     at  
org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLockInterceptor.java:107)  
12:03:56,658 ERROR [STDERR]     at  
org.jboss.ejb.plugins.EntityCreationInterceptor.invoke(EntityCreationInterceptor.java:69)
  
12:03:56,658 ERROR [STDERR]     at  
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:96)  
12:03:56,658 ERROR [STDERR]     at  
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:167)  
12:03:56,659 ERROR [STDERR]     at  
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:61)  
12:03:56,659 ERROR [STDERR]     at  
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:129)  
12:03:56,659 ERROR [STDERR]     at  
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:166)  
12:03:56,659 ERROR [STDERR]     at  
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:145)
  
12:03:56,660 ERROR [STDERR]     at  
org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:482)  
12:03:56,660 ERROR [STDERR]     at  
org.jboss.ejb.Container.invoke(Container.java:694)  
12:03:56,660 ERROR [STDERR]     at  
org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1024)  
12:03:56,661 ERROR [STDERR]     at  
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)  
12:03:56,661 ERROR [STDERR]     at  
org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:321)  
12:03:56,661 ERROR [STDERR]     at  
sun.reflect.GeneratedMethodAccessor186.invoke(Unknown Source)  
12:03:56,699 ERROR [STDERR]     at  
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  
12:03:56,700 ERROR [STDERR]     at  
java.lang.reflect.Method.invoke(Method.java:324)  
12:03:56,700 ERROR [STDERR]    
 
================================================  
  
  
and this stack trace on the client:  
  
Beginning Example:  
result size: 1  
java.lang.reflect.UndeclaredThrowableException  
         at $Proxy1.getOrderID(Unknown Source)  
         at  
examples.local_objects.ClientDemoDependentObject.main(Unknown Source)  
Caused by: java.rmi.ServerException: RemoteException occurred in server  
thread; nested exception is:  
         java.rmi.ServerException: Error setting column value  
Embedded Exception  
null; nested exception is:  
         javax.ejb.EJBException: Error setting column value  
Embedded Exception  
null  
         at  
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:292)  
         at sun.rmi.transport.Transport$1.run(Transport.java:148)  
         at java.security.AccessController.doPrivileged(Native Method)  
         at sun.rmi.transport.Transport.serviceCall(Transport.java:144)  
         at  
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)  
         at  
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)  
         at java.lang.Thread.run(Thread.java:536)  
         at  
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
  
         at  
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)  
         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133)  
         at  
org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)  
         at  
org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:127)
  
         at  
org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:92)  
         at  
org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:51)  
         at  
org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:48)  
         at  
org.jboss.proxy.ejb.EntityInterceptor.invoke(EntityInterceptor.java:115)  
         at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:83)  
         ... 2 more  
Caused by: java.rmi.ServerException: Error setting column value  
Embedded Exception  
null; nested exception is:  
         javax.ejb.EJBException: Error setting column value  
Embedded Exception  
null  
         at  
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:119) 
 
         at  
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:167)  
         at  
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:61)  
         at  
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:129)  
         at  
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:166)  
         at  
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:145)
  
         at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:482)  
         at org.jboss.ejb.Container.invoke(Container.java:694)  
         at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1024)  
         at  
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)  
         at  
org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:321)  
         at sun.reflect.GeneratedMethodAccessor186.invoke(Unknown  
Source)  
         at  
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  
         at java.lang.reflect.Method.invoke(Method.java:324)  
         at  
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)  
         at sun.rmi.transport.Transport$1.run(Transport.java:148)  
         at java.security.AccessController.doPrivileged(Native Method)  
         at sun.rmi.transport.Transport.serviceCall(Transport.java:144)  
         at  
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)  
         at  
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)  
         at java.lang.Thread.run(Thread.java:536)  
Caused by: javax.ejb.EJBException: Error setting column value  
Embedded Exception  
null  
         at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCTypeComplex.setColumnValue(JDBCTypeComplex.java:161)
  
         at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCTypeComplex.setColumnValue(JDBCTypeComplex.java:133)
  
         at  
org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadArgumentResults(JDBCAbstractCMPFieldBridge.java:352)
  
         at  
org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadInstanceResults(JDBCAbstractCMPFieldBridge.java:304)
  
         at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:140)
  
         at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:62)
  
         at  
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadEntity(JDBCStoreManager.java:496)  
         at  
org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity(CMPPersistenceManager.java:410) 
 
         at  
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.loadEntity(CachedConnectionInterceptor.java:314)
  
         at  
org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:310)
  
         at  
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:147)
  
         at  
org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:193)
  
         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:96)  
         ... 20 more  
 
=====================================  
 
instructions to reproduce this error:  
  
1) deploy the attached ear (dvc-bug.ear, uses java:/PostgresDS as the  
datasource)  
  
2) execute the following sql commands with psql or a similar tool:  
insert into orders (order_id) values ('100');  
  ( 'ant run-client' at this point to confirm the app is working if you want)  
update orders set address_state='FL' where order_id='100';  
  
3)  run the client using the ant script provided ('ant run-client')  
  
  
let me know what I can do to help resolve this bug, as it is stopping my 
project right now. 
 

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=376685&aid=562004&group_id=22866

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to