can anyone give me a persistent execution mode program demo?
i have been stucked..

my testcase and exception jvm method call stack as follow:

public class PersistentExecutionModeTest extends EnvironmentFactoryTestCase {
  | 
  |   public void testDeploy() {                        // seems ok
  | //    /*
  |       JbpmConfiguration environmentFactory = 
(JbpmConfiguration)getEnvironmentFactory();
  |       ProcessService processService = 
environmentFactory.get(ProcessService.class);
  |       
  |       ClientProcessDefinition processDefinition = ProcessDefinitionBuilder
  |         .startProcess("test")
  |         
  |           .startActivity("start", WaitState.class)
  |             .initial()
  |             .flow("end","end")
  |           .endActivity()
  |           
  |           .startActivity("end", AutomaticActivity.class)
  |           .endActivity()
  |           
  |         .endProcess();
  |       
  |     Deployment deployment = new DeploymentImpl();
  |     deployment.addObject("testProcesssss", processDefinition);
  |             
  |     ((ProcessServiceImpl) processService).deploy(deployment);
  | //          */
  |   }
  |   
  |   public void testStartProcessInstance() {          // seems ok, 2
  |   
  |             JbpmConfiguration environmentFactory = (JbpmConfiguration) 
getEnvironmentFactory();
  |             ExecutionService executionService = 
environmentFactory.get(ExecutionService.class);
  |             Execution execution = 
executionService.startProcessInstanceById("test:1", "request17");
  |   }
  |   
  |   public void testResumeProcessInstance(){ // something wrong...  
  |       JbpmConfiguration environmentFactory = 
(JbpmConfiguration)getEnvironmentFactory();
  |       ExecutionService executionService = 
environmentFactory.get(ExecutionService.class);
  |       Execution execution = 
executionService.signalExecutionById("test/request17", "end");          // 
exception occured here 
  |                                             
  |   }
  | 
  | }

exception:
Hibernate: 
    /* delete org.jbpm.pvm.internal.model.ExecutionImpl */ delete 
        from
            JBPM_EXECUTION 
        where
            DBID_=? 
            and DBVERSION_=?
10:36:37,578 WRN | [JDBCExceptionReporter] SQL Error: 1451, SQLState: 23000
10:36:37,578 SEV | [JDBCExceptionReporter] Cannot delete or update a parent 
row: a foreign key constraint fails (`jbpm_pvm/jbpm_execution`, CONSTRAINT 
`FK_EXEC_INSTANCE` FOREIGN KEY (`INSTANCE_`) REFERENCES `jbpm_execution` 
(`DBID_`))
### EXCEPTION ###########################################
10:36:37,578 SEV | [AbstractFlushingEventListener] Could not synchronize 
database state with session
org.hibernate.exception.ConstraintViolationException: could not delete: 
[org.jbpm.pvm.internal.model.ExecutionImpl#4]
        at 
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
        at 
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2546)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2702)
        at 
org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:77)
        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:172)
        at 
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
        at 
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
        at 
org.jbpm.pvm.internal.tx.HibernateSessionResource.prepare(HibernateSessionResource.java:54)
        at 
org.jbpm.pvm.internal.tx.StandardTransaction.commit(StandardTransaction.java:106)
        at 
org.jbpm.pvm.internal.tx.StandardTransaction.complete(StandardTransaction.java:65)
        at 
org.jbpm.pvm.internal.tx.StandardTransactionInterceptor.execute(StandardTransactionInterceptor.java:61)
        at 
org.jbpm.pvm.internal.svc.EnvironmentInterceptor.execute(EnvironmentInterceptor.java:40)
        at 
org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:52)
        at 
org.jbpm.pvm.internal.model.ProcessInstanceEndedSynchronization.afterCompletion(ProcessInstanceEndedSynchronization.java:52)
        at 
org.jbpm.pvm.internal.tx.StandardSynchronization.afterCompletion(StandardSynchronization.java:41)
        at 
org.jbpm.pvm.internal.tx.StandardTransaction.afterCompletion(StandardTransaction.java:213)
        at 
org.jbpm.pvm.internal.tx.StandardTransaction.commit(StandardTransaction.java:153)
        at 
org.jbpm.pvm.internal.tx.StandardTransaction.complete(StandardTransaction.java:65)
        at 
org.jbpm.pvm.internal.tx.StandardTransactionInterceptor.execute(StandardTransactionInterceptor.java:61)
        at 
org.jbpm.pvm.internal.svc.EnvironmentInterceptor.execute(EnvironmentInterceptor.java:40)
        at 
org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:52)
        at 
org.jbpm.pvm.internal.svc.ExecutionServiceImpl.signalExecutionById(ExecutionServiceImpl.java:97)
        at 
org.jbpm.pvm.executionmode.persistence.PersistentExecutionModeTest.testResumeProcessInstance(PersistentExecutionModeTest.java:81)
        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:585)
        at junit.framework.TestCase.runTest(TestCase.java:164)
        at org.jbpm.test.BaseJbpmTestCase.runTest(BaseJbpmTestCase.java:81)
        at junit.framework.TestCase.runBare(TestCase.java:130)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:120)
        at junit.framework.TestSuite.runTest(TestSuite.java:230)
        at junit.framework.TestSuite.run(TestSuite.java:225)
        at 
org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
        at 
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4210916#4210916

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4210916
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to