1 Reply Latest reply on Sep 28, 2004 2:10 AM by Satish Kale

    error while update in CMP entity

    Satish Kale Newbie

      Hi,

      I am encountering following error while updating the DB using entity bean. Please note that insert happens without any problem, its only update that fails. Another point to be noted is that, it happens when I try to set those columns which are of type BLOB.
      Again, insert is successful for BLOB columns but not update.

      error is ---------------------------------------

      2004-09-09 17:46:37,218 TRACE
      [org.jboss.ejb.plugins.EntitySynchronizationInterceptor]
      afterCompletion, sent notify on TxLock for
      ctx=org.jboss.ejb.EntityEnterpriseContext@6d6aa0
      2004-09-09 17:46:37,218 ERROR [org.jboss.ejb.plugins.LogInterceptor]
      TransactionRolledbackException in method: public abstract boolean
      com.kale.products.bizservices.common.processlogger.ProcessLogController.updateProcessDetails(com.kale.products.dataservices.commonstructure.common.processlogger.ProcessLogInfo)
      throws javax.naming.NamingException,javax.ejb.FinderException,
      causedBy:
      org.jboss.tm.JBossRollbackException: Unable to commit,
      tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=satish//3,
      BranchQual=] status=STATUS_NO_TRANSACTION; - nested throwable:
      (javax.ejb.EJBException: Store failed
      Embedded Exception
      null)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:413)
      at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:398)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:277)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:128)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:118)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
      at org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)
      at org.jboss.ejb.Container.invoke(Container.java:700)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
      at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:367)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      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:534)
      Caused by: javax.ejb.EJBException: Store failed
      Embedded Exception
      null
      at org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityCommand.execute(JDBCStoreEntityCommand.java:95)
      at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.storeEntity(JAWSPersistenceManager.java:322)
      at org.jboss.ejb.plugins.CMPPersistenceManager.storeEntity(CMPPersistenceManager.java:421)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.storeEntity(CachedConnectionInterceptor.java:387)
      at org.jboss.ejb.EntityContainer.storeEntity(EntityContainer.java:714)
      at org.jboss.ejb.GlobalTxEntityMap.synchronizeEntities(GlobalTxEntityMap.java:149)
      at org.jboss.ejb.GlobalTxEntityMap$GlobalTxEntityMapSynchronize.beforeCompletion(GlobalTxEntityMap.java:215)
      at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1308)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:347)
      ... 26 more
      2004-09-09 17:46:37,529 TRACE [org.jboss.ejb.plugins.LogInterceptor]
      End method=updateProcessDetails
      -----------------------------------------------------------------------

      The embeded exception is "null", but I am sure that I the object I am setting for the BLOB database field is not null.

      Please advice.

      Thanks.