openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lu HongJin (JIRA)" <j...@apache.org>
Subject [jira] Created: (OPENJPA-749) Re insert record into DB updating Entity while global transaction enabled.
Date Fri, 17 Oct 2008 01:50:44 GMT
Re insert record into DB updating Entity while global transaction enabled.
--------------------------------------------------------------------------

                 Key: OPENJPA-749
                 URL: https://issues.apache.org/jira/browse/OPENJPA-749
             Project: OpenJPA
          Issue Type: Bug
          Components: jdbc
    Affects Versions: 1.2.0
         Environment: WPS6.1, DB2 9.0, OpenJPA 1.2.0, JDK 5 (IBM JVM)
            Reporter: Lu HongJin
            Priority: Critical


1. My env is : WPS6.1, DB2 9.0, OpenJPA 1.2.0

2. The followed is my persistence.xml configuration file:
<persistence-unit name="derby.ojpa">
        <provider>
                  org.apache.openjpa.persistence.PersistenceProviderImpl
            </provider>
            <jta-data-source>jdbc/jpa</jta-data-source>
            <mapping-file>orm.xml</mapping-file>
            <properties>
                  <property name="openjpa.TransactionMode" value="managed"
/>
                  <property name="openjpa.ConnectionFactoryMode" value=
"managed"/>
                  <property name="openjpa.jdbc.DBDictionary" value="db2"/>
                  <property name="openjpa.jdbc.EagerFetchMode" value="join"
></property>
                  <property name="openjpa.InverseManager" value="true"/>
                  <property name="openjpa.RetainState" value="true"/>
                  <property name="openjpa.AutoDetach" value="nontx-read"/>
                  <property name="openjpa.NontransactionalRead" value=
"false"/>
                  <property name="openjpa.NontransactionalWrite" value=
"false"/>
                  <property name="openjpa.ConnectionRetainMode" value=
"transaction"/>
            </properties>
    </persistence-unit>

3. I enable global transaction of SCA component , make sure tx is started,
and invokes several DAO operations in one of the SCA component operation
named "updateCaseStatus".
such as CaseMgmtImpl SCA component sequentially invokes DAO operations

      CaseStatus cStatus = statusDAO.findByCaseStatusPK(caseeStatus);
      Casee casee = caseDAO.findByCaseePKWithRef(caseeId);
      casee.setBusinessStatus(cStatus);
      caseDAO.updateCasee(casee);

In caseDAO.findByCaseePKWithRef :
      em = emf.createEntityManager();
      em.joinTransaction();
      result = (Casee)em.find(Casee.class, caseID);
      em.close();
In statusDAO.findByCaseStatusPK :
      em = emf.createEntityManager();
      em.joinTransaction();
      result = (CaseStatus)em.find(CaseStatus.class, statusCode);
      em.close();

In caseDAO.updateCasee :
      em = emf.createEntityManager();
      em.joinTransaction();
      Casee mergedcasee = em.merge(casee);
      em.flush();
      em.close();

4. Then at the end of the sca component updateCaseStatus method, such
errors throwed.

com.ibm.sbs.cci.dao.DAOException: <openjpa-1.2.0-r422266:683325 fatal
general error> org.apache.openjpa.persistence.PersistenceException: DB2 SQL
error: SQLCODE: -803, SQLSTATE: 23505, SQLERRMC: 1;DB2ADMIN.CASEESQLCA
OUTPUT[Errp=SQLDMISR, Errd=-2146893819, 5, 0, 0, -957, 0]
DB2 SQL error: SQLCODE: -803, SQLSTATE: 23505, SQLERRMC: 1;DB2ADMIN.CASEE
FailedObject: prepstmnt 315232970 INSERT INTO DB2ADMIN.CASEE (CASEID,
CREATIONTIME, EFFECTIVEDATE, ENDDATE, EXPIRYDATE,
CASESTATUS_BUSINESSSTATUS, CASETYPE_CASETYPE) VALUES (?, ?, ?, ?, ?, ?, ?)
[org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement]
      at com.ibm.sbs.cci.dao.AbstractCaseeDAO.updateCasee(
AbstractCaseeDAO.java:104)
      at com.ibm.sbs.cci.CaseMgmtImpl.updateCaseStatus(
CaseMgmtImpl.java:129)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(
NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:618)
      at com.ibm.ws.sca.internal.java.handler.JavaReflectionAdapter$2.run(
JavaReflectionAdapter.java:152)
      at java.security.AccessController.doPrivileged(
AccessController.java:197)
      at com.ibm.ws.sca.internal.java.handler.JavaReflectionAdapter.invoke(
JavaReflectionAdapter.java:149)
      at
com.ibm.ws.sca.internal.java.handler.JavaImplementationHandler.invokeSync(
JavaImplementationHandler.java:447)
      at
com.ibm.ws.sca.internal.java.handler.JavaImplementationHandler.processMessage(
JavaImplementationHandler.java:195)
      at
com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(
MessageDispatcherImpl.java:714)
      at
com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(
MessageDispatcherImpl.java:1166)
      at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(
ManagedMessageImpl.java:821)
      at
com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(
ModuleSessionBean.java:338)
      at
com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionRequiredActivitySessionNotSupported(
ModuleSessionBean.java:311)
      at
com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionRequiredActivitySessionNotSupported(
EJSLocalStatelessModule_43132892.java:233)
      at
com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionGlobalActivitySessionFalse(
UOWStrategyImpl.java:311)
      at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(
JoinUOWHandler.java:165)
      at
com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(
MessageDispatcherImpl.java:725)
      at
com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(
MessageDispatcherImpl.java:1166)
      at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(
ManagedMessageImpl.java:812)
      at
com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processMessage(
ModuleSessionBean.java:149)
      at
com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.processMessage(
EJSLocalStatelessModule_43132892.java:97)
      at
com.ibm.wbit.comptest.controller.invocation.impl.AdhocInvoker.processMessage(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.Invoker.managedInvoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.Invoker.invoke(Unknown
Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.BaseInvocationHandler.invoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.doInvoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager$1.run(Unknown
 Source)
      at java.security.AccessController.doPrivileged(
AccessController.java:219)
      at javax.security.auth.Subject.doAs(Subject.java:495)
      at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:118)
      at
com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.invoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.command.impl.BaseCommandHandler.doCommand(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown
 Source)
      at com.ibm.wbit.comptest.servlet.TestControllerServlet.process(
TestControllerServlet.java:76)
      at com.ibm.wbit.comptest.servlet.TestControllerServlet.doPost(
TestControllerServlet.java:51)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(
ServletWrapper.java:995)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(
ServletWrapper.java:501)
      at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(
ServletWrapper.java:464)
      at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(
CacheServletWrapper.java:90)
      at com.ibm.ws.webcontainer.WebContainer.handleRequest(
WebContainer.java:744)
      at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(
WebContainer.java:1455)
      at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(
WCChannelLink.java:113)
      at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(
HttpInboundLink.java:454)
      at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(
HttpInboundLink.java:383)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(
HttpInboundLink.java:263)
      at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(
NewConnectionInitialReadCallback.java:214)
      at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(
NewConnectionInitialReadCallback.java:113)
      at
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(
AioReadCompletionListener.java:165)
      at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(
AbstractAsyncFuture.java:217)
      at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(
AsyncChannelFuture.java:161)
      at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
      at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
      at com.ibm.io.async.ResultHandler.runEventProcessingLoop(
ResultHandler.java:743)
      at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
Caused by: <openjpa-1.2.0-r422266:683325 fatal general error>
org.apache.openjpa.persistence.PersistenceException: DB2 SQL error:
SQLCODE: -803, SQLSTATE: 23505, SQLERRMC: 1;DB2ADMIN.CASEESQLCA
OUTPUT[Errp=SQLDMISR, Errd=-2146893819, 5, 0, 0, -957, 0]
DB2 SQL error: SQLCODE: -803, SQLSTATE: 23505, SQLERRMC: 1;DB2ADMIN.CASEE
FailedObject: prepstmnt 315232970 INSERT INTO DB2ADMIN.CASEE (CASEID,
CREATIONTIME, EFFECTIVEDATE, ENDDATE, EXPIRYDATE,
CASESTATUS_BUSINESSSTATUS, CASETYPE_CASETYPE) VALUES (?, ?, ?, ?, ?, ?, ?)
[org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement]
      at org.apache.openjpa.jdbc.sql.DBDictionary.narrow(
DBDictionary.java:4238)
      at org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(
DBDictionary.java:4203)
      at org.apache.openjpa.jdbc.sql.DB2Dictionary.newStoreException(
DB2Dictionary.java:503)
      at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(
SQLExceptions.java:102)
      at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(
SQLExceptions.java:72)
      at
org.apache.openjpa.jdbc.kernel.BatchingPreparedStatementManagerImpl.flushBatch(
BatchingPreparedStatementManagerImpl.java:195)
      at org.apache.openjpa.jdbc.kernel.MyUpdateManager.flush(
MyUpdateManager.java:357)
      at org.apache.openjpa.jdbc.kernel.MyUpdateManager.flush(
MyUpdateManager.java:77)
      at org.apache.openjpa.jdbc.kernel.MyUpdateManager.flush(
MyUpdateManager.java:60)
      at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(
JDBCStoreManager.java:655)
      at org.apache.openjpa.kernel.DelegatingStoreManager.flush(
DelegatingStoreManager.java:130)
      at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2010)
      at org.apache.openjpa.kernel.BrokerImpl.flushSafe(
BrokerImpl.java:1908)
      at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:1679)
      at org.apache.openjpa.kernel.DelegatingBroker.flush(
DelegatingBroker.java:989)
      at org.apache.openjpa.persistence.EntityManagerImpl.flush(
EntityManagerImpl.java:592)
      at com.ibm.sbs.cci.dao.AbstractCaseeDAO.updateCasee(
AbstractCaseeDAO.java:98)
      ... 60 more
Caused by: com.ibm.websphere.ce.cm.DuplicateKeyException: DB2 SQL error:
SQLCODE: -803, SQLSTATE: 23505, SQLERRMC: 1;DB2ADMIN.CASEE
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(
NativeConstructorAccessorImpl.java:67)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:522)
      at
com.ibm.websphere.rsadapter.GenericDataStoreHelper.mapExceptionHelper(
GenericDataStoreHelper.java:523)
      at com.ibm.websphere.rsadapter.GenericDataStoreHelper.mapException(
GenericDataStoreHelper.java:578)
      at com.ibm.ws.rsadapter.jdbc.WSJdbcUtil.mapException(
WSJdbcUtil.java:903)
      at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.executeUpdate(
WSJdbcPreparedStatement.java:626)
      at
org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeUpdate(
DelegatingPreparedStatement.java:269)
      at
org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeUpdate(
LoggingConnectionDecorator.java:864)
      at
org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeUpdate(
DelegatingPreparedStatement.java:269)
      at
org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement.executeUpdate(
JDBCStoreManager.java:1504)
      at
org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.executeUpdate(
PreparedStatementManagerImpl.java:151)
      at
org.apache.openjpa.jdbc.kernel.BatchingPreparedStatementManagerImpl.flushSingleRow(
BatchingPreparedStatementManagerImpl.java:217)
      at
org.apache.openjpa.jdbc.kernel.BatchingPreparedStatementManagerImpl.flushBatch(
BatchingPreparedStatementManagerImpl.java:156)
      ... 71 more

[08-10-15 16:51:08:718 CST] 00000074 RegisteredSyn E   WTRN0074E: 从
before_completion 同步操作捕获异常:<openjpa-1.2.0-r422266:683325 nonfatal
user error> org.apache.openjpa.persistence.InvalidStateException:
Encountered unmanaged object in persistent field
"com.ibm.sbs.cci.pojo.Casee.businessStatus" during flush.  However, this
field does not allow cascade persist. Set the cascade attribute for this
field to CascadeType.PERSIST or CascadeType.ALL (JPA annotations) or
"persist" or "all" (JPA orm.xml), or enable cascade-persist globally, or
manually persist the related field value prior to flushing. You cannot
flush unmanaged objects or graphs that have persistent associations to
unmanaged objects.
FailedObject: com.ibm.sbs.cci.pojo.CaseStatus-APPROVED
      at org.apache.openjpa.kernel.SingleFieldManager.preFlushPC(
SingleFieldManager.java:753)
      at org.apache.openjpa.kernel.SingleFieldManager.preFlush(
SingleFieldManager.java:594)
      at org.apache.openjpa.kernel.SingleFieldManager.preFlush(
SingleFieldManager.java:562)
      at org.apache.openjpa.kernel.SingleFieldManager.preFlush(
SingleFieldManager.java:478)
      at org.apache.openjpa.kernel.StateManagerImpl.preFlush(
StateManagerImpl.java:2828)
      at org.apache.openjpa.kernel.PDirtyState.beforeFlush(
PDirtyState.java:37)
      at org.apache.openjpa.kernel.StateManagerImpl.beforeFlush(
StateManagerImpl.java:959)
      at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:1948)
      at org.apache.openjpa.kernel.BrokerImpl.flushSafe(
BrokerImpl.java:1908)
      at org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(
BrokerImpl.java:1826)
      at
org.apache.openjpa.ee.WASManagedRuntime$WASSynchronization.beforeCompletion(
WASManagedRuntime.java:304)
      at
com.ibm.ws.jtaextensions.SynchronizationCallbackWrapper.beforeCompletion(
SynchronizationCallbackWrapper.java:65)
      at com.ibm.ws.Transaction.JTA.RegisteredSyncs.distributeBefore(
RegisteredSyncs.java:242)
      at com.ibm.ws.Transaction.JTA.TransactionImpl.prePrepare(
TransactionImpl.java:2398)
      at com.ibm.ws.Transaction.JTA.TransactionImpl.stage1CommitProcessing(
TransactionImpl.java:1631)
      at com.ibm.ws.Transaction.JTA.TransactionImpl.processCommit(
TransactionImpl.java:1602)
      at com.ibm.ws.Transaction.JTA.TransactionImpl.commit(
TransactionImpl.java:1537)
      at com.ibm.ws.Transaction.JTA.TranManagerImpl.commit(
TranManagerImpl.java:239)
      at com.ibm.ws.Transaction.JTA.TranManagerSet.commit(
TranManagerSet.java:163)
      at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:756)
      at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
      at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(
TransactionControlImpl.java:581)
      at com.ibm.ejs.container.EJSContainer.postInvoke(
EJSContainer.java:3910)
      at
com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionRequiredActivitySessionNotSupported(
EJSLocalStatelessModule_43132892.java:244)
      at
com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionGlobalActivitySessionFalse(
UOWStrategyImpl.java:311)
      at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(
JoinUOWHandler.java:165)
      at
com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(
MessageDispatcherImpl.java:725)
      at
com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(
MessageDispatcherImpl.java:1166)
      at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(
ManagedMessageImpl.java:812)
      at
com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processMessage(
ModuleSessionBean.java:149)
      at
com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.processMessage(
EJSLocalStatelessModule_43132892.java:97)
      at
com.ibm.wbit.comptest.controller.invocation.impl.AdhocInvoker.processMessage(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.Invoker.managedInvoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.Invoker.invoke(Unknown
Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.BaseInvocationHandler.invoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.doInvoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager$1.run(Unknown
 Source)
      at java.security.AccessController.doPrivileged(
AccessController.java:219)
      at javax.security.auth.Subject.doAs(Subject.java:495)
      at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:118)
      at
com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.invoke(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.command.impl.BaseCommandHandler.doCommand(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown
 Source)
      at
com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown
 Source)
      at com.ibm.wbit.comptest.servlet.TestControllerServlet.process(
TestControllerServlet.java:76)
      at com.ibm.wbit.comptest.servlet.TestControllerServlet.doPost(
TestControllerServlet.java:51)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(
ServletWrapper.java:995)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(
ServletWrapper.java:501)
      at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(
ServletWrapper.java:464)
      at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(
CacheServletWrapper.java:90)
      at com.ibm.ws.webcontainer.WebContainer.handleRequest(
WebContainer.java:744)
      at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(
WebContainer.java:1455)
      at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(
WCChannelLink.java:113)
      at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(
HttpInboundLink.java:454)
      at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(
HttpInboundLink.java:383)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(
HttpInboundLink.java:263)
      at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(
NewConnectionInitialReadCallback.java:214)
      at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(
NewConnectionInitialReadCallback.java:113)
      at
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(
AioReadCompletionListener.java:165)
      at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(
AbstractAsyncFuture.java:217)
      at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(
AsyncChannelFuture.java:161)
      at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
      at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
      at com.ibm.io.async.ResultHandler.runEventProcessingLoop(
ResultHandler.java:743)
      at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)

5. According to my analysis,

      CaseStatus cStatus = statusDAO.findByCaseStatusPK(caseeStatus);   ---
cStatus with StateManagerImpl & PNonTransState
      Casee casee = caseDAO.findByCaseePKWithRef(caseeId);              ---
casee with StateManagerImpl & PNonTransState
      casee.setBusinessStatus(cStatus);                                 ---
casee with StateManagerImpl & PDirtyState
      caseDAO.updateCasee(casee);                                       ---
in updateCasee method, casee(PDirtyTransState -> PNewState)

      em = emf.createEntityManager();
      em.joinTransaction();
      Casee mergedcasee = em.merge(casee);                              ---
casee with StateManagerImpl & PDirtyState
                                                                        ---
mergedcasee with StateManagerImpl & PNewState
      em.flush();                                                       ---
Here, a record would be inserted into DB
      em.close();

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message