Using a SpinList<SpinXmlElement> as the collection of a multi instance call activity


#1

Hello and greetings from Germany,

I´m currently working on an import process that creates a file structure out of some xml-code.
To handle the xml-code I use Spin.
The process should call a multi instance subprocess for every SpinXmlElement of a SpinList. The problem is that I get an NoSuchElementException everytime the subprocess starts for the second element.

Can somebody please help me with this problem? If you need further information feel free to ask.

StackTrace Part1:


CallActivity_05lmtu4
	  ^
	  |
	EndEvent_0ikubff
	  ^
	  |
	ServiceTask_19tdwrw
	  ^
	  |
	StartEvent_1
	  ^
	  |
	CallActivity_05lmtu4
	  ^
	  |
	CallActivity_05lmtu4#multiInstanceBody
	  ^
	  |
	ServiceTask_CreatePub

2016-07-01T09:18:59,518 ERROR [pool-5-thread-1] org.camunda.bpm.engine.pvm: ENGINE-20009 Execption while completing subprocess of execution ProcessInstance[0e66ada8-3f5c-11e6-b673-a0481c98898b]
java.util.NoSuchElementException
	at java.util.ArrayList$Itr.next(ArrayList.java:854) ~[?:1.8.0_74]
	at org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior.getElementAtIndex(MultiInstanceActivityBehavior.java:126) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior.evaluateCollectionVariable(MultiInstanceActivityBehavior.java:90) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior.performInstance(MultiInstanceActivityBehavior.java:75) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.SequentialMultiInstanceActivityBehavior.complete(SequentialMultiInstanceActivityBehavior.java:52) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:101) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:32) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:42) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:23) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.PvmExecutionImpl.end(PvmExecutionImpl.java:321) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.BpmnActivityBehavior.performOutgoingBehavior(BpmnActivityBehavior.java:132) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.BpmnActivityBehavior.performDefaultOutgoingBehavior(BpmnActivityBehavior.java:52) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior.leave(FlowNodeActivityBehavior.java:46) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior.leave(AbstractBpmnActivityBehavior.java:68) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.CallableElementActivityBehavior.completed(CallableElementActivityBehavior.java:48) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationProcessEnd.eventNotificationsCompleted(PvmAtomicOperationProcessEnd.java:87) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationProcessEnd.eventNotificationsCompleted(PvmAtomicOperationProcessEnd.java:30) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:83) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:32) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:42) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:23) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.PvmExecutionImpl.end(PvmExecutionImpl.java:321) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.NoneEndEventActivityBehavior.execute(NoneEndEventActivityBehavior.java:24) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityExecute.execute(PvmAtomicOperationActivityExecute.java:41) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityExecute.execute(PvmAtomicOperationActivityExecute.java:26) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationTransitionNotifyListenerStart.eventNotificationsCompleted(PvmAtomicOperationTransitionNotifyListenerStart.java:56) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationTransitionNotifyListenerStart.eventNotificationsCompleted(PvmAtomicOperationTransitionNotifyListenerStart.java:26) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) [camunda-engine-7.4.0.jar:7.4.0]

#2

StackTrace Part2:

	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationTransitionCreateScope.scopeCreated(PvmAtomicOperationTransitionCreateScope.java:34) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationCreateScope.execute(PvmAtomicOperationCreateScope.java:49) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationCreateScope.execute(PvmAtomicOperationCreateScope.java:23) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:167) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.jobexecutor.AsyncContinuationJobHandler.execute(AsyncContinuationJobHandler.java:92) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.JobEntity.execute(JobEntity.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.cmd.ExecuteJobsCmd.execute(ExecuteJobsCmd.java:103) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:95) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.spring.SpringTransactionInterceptor$1.doInTransaction(SpringTransactionInterceptor.java:42) [camunda-engine-spring-7.4.0.jar:7.4.0]
	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133) [spring-tx-4.1.6.RELEASE.jar:4.1.6.RELEASE]
	at org.camunda.bpm.engine.spring.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:40) [camunda-engine-spring-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.jobexecutor.ExecuteJobsRunnable.executeJob(ExecuteJobsRunnable.java:79) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.jobexecutor.ExecuteJobsRunnable.run(ExecuteJobsRunnable.java:66) [camunda-engine-7.4.0.jar:7.4.0]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_74]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_74]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_74]
2016-07-01T09:18:59,529 WARN  [pool-5-thread-1] org.camunda.bpm.engine.jobexecutor: ENGINE-14002 Exception while executing job MessageEntity[repeatnull, id=027a4f5d-3f5c-11e6-b673-a0481c98898b, revision=1, duedate=null, lockOwner=7ef0e54a-f487-47b8-bd64-d1192cf4d71b, lockExpirationTime=Fri Jul 01 07:23:29 UTC 2016, executionId=007cf898-3f5c-11e6-b673-a0481c98898b, processInstanceId=007cf898-3f5c-11e6-b673-a0481c98898b, isExclusive=true, retries=3, jobHandlerType=async-continuation, jobHandlerConfiguration=transition-notify-listener-take$SequenceFlow_1386jpu, exceptionByteArray=null, exceptionByteArrayId=null, exceptionMessage=null, deploymentId=0e43f30f-3edc-11e6-85a9-a0481c98898b]: null
2016-07-01T09:18:59,534 ERROR [pool-5-thread-1] org.camunda.bpm.engine.context: ENGINE-16004 Exception while closing command context: null
java.util.NoSuchElementException
	at java.util.ArrayList$Itr.next(ArrayList.java:854) ~[?:1.8.0_74]
	at org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior.getElementAtIndex(MultiInstanceActivityBehavior.java:126) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior.evaluateCollectionVariable(MultiInstanceActivityBehavior.java:90) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior.performInstance(MultiInstanceActivityBehavior.java:75) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.SequentialMultiInstanceActivityBehavior.complete(SequentialMultiInstanceActivityBehavior.java:52) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:101) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:32) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:42) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:23) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.PvmExecutionImpl.end(PvmExecutionImpl.java:321) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.BpmnActivityBehavior.performOutgoingBehavior(BpmnActivityBehavior.java:132) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.BpmnActivityBehavior.performDefaultOutgoingBehavior(BpmnActivityBehavior.java:52) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior.leave(FlowNodeActivityBehavior.java:46) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior.leave(AbstractBpmnActivityBehavior.java:68) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.CallableElementActivityBehavior.completed(CallableElementActivityBehavior.java:48) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationProcessEnd.eventNotificationsCompleted(PvmAtomicOperationProcessEnd.java:87) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationProcessEnd.eventNotificationsCompleted(PvmAtomicOperationProcessEnd.java:30) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:83) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityEnd.execute(PvmAtomicOperationActivityEnd.java:32) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:42) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityNotifyListenerEnd.eventNotificationsCompleted(PvmAtomicOperationActivityNotifyListenerEnd.java:23) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.PvmExecutionImpl.end(PvmExecutionImpl.java:321) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.bpmn.behavior.NoneEndEventActivityBehavior.execute(NoneEndEventActivityBehavior.java:24) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityExecute.execute(PvmAtomicOperationActivityExecute.java:41) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationActivityExecute.execute(PvmAtomicOperationActivityExecute.java:26) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationTransitionNotifyListenerStart.eventNotificationsCompleted(PvmAtomicOperationTransitionNotifyListenerStart.java:56) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationTransitionNotifyListenerStart.eventNotificationsCompleted(PvmAtomicOperationTransitionNotifyListenerStart.java:26) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:65) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:505) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:480) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.core.operation.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:58) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:159) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:494) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:471) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationTransitionCreateScope.scopeCreated(PvmAtomicOperationTransitionCreateScope.java:34) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationCreateScope.execute(PvmAtomicOperationCreateScope.java:49) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.pvm.runtime.operation.PvmAtomicOperationCreateScope.execute(PvmAtomicOperationCreateScope.java:23) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.AtomicOperationInvocation.execute(AtomicOperationInvocation.java:81) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.invokeNext(CommandContext.java:180) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performNext(CommandContext.java:167) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:134) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:124) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.jobexecutor.AsyncContinuationJobHandler.execute(AsyncContinuationJobHandler.java:92) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.persistence.entity.JobEntity.execute(JobEntity.java:124) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.cmd.ExecuteJobsCmd.execute(ExecuteJobsCmd.java:103) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24) ~[camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:95) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.spring.SpringTransactionInterceptor$1.doInTransaction(SpringTransactionInterceptor.java:42) [camunda-engine-spring-7.4.0.jar:7.4.0]
	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133) [spring-tx-4.1.6.RELEASE.jar:4.1.6.RELEASE]
	at org.camunda.bpm.engine.spring.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:40) [camunda-engine-spring-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.jobexecutor.ExecuteJobsRunnable.executeJob(ExecuteJobsRunnable.java:79) [camunda-engine-7.4.0.jar:7.4.0]
	at org.camunda.bpm.engine.impl.jobexecutor.ExecuteJobsRunnable.run(ExecuteJobsRunnable.java:66) [camunda-engine-7.4.0.jar:7.4.0]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_74]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_74]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_74]
2016-07-01T09:18:59,602 WARN  [pool-5-thread-1] org.camunda.bpm.engine.jobexecutor: ENGINE-14006 Exception while executing job 027a4f5d-3f5c-11e6-b673-a0481c98898b: java.util.NoSuchElementException

#3

Can you please provide a unit test that reproduces the problem? You can use the unit testing template to get started: https://github.com/camunda/camunda-engine-unittest

Also, please try to format stacktraces as code blocks, that makes them easier to read (see How to format code blocks?).

Cheers,
Thorben


#4

I would like to, but I cannot find out how to call methods from a service task expression of the bpmn file in a unit test. I also cannot find anything about that in the internet. Can you tell me how to do this?

Cheers,
Stefan


#5

Hi,

I have managed to create a test case for my problem. It would be very nice, if someone could look at it and tell me what I’m doing wrong or if it is a bug.

Info about the test:

The test takes the children of a SpinXmlElement in a SpinList<SpinXmlElement> and tries to use them as the collection of a multi instance sub process or call activity. (The outcome is the same…)

There are three different attempts to achieve this:

  1. Try using the original SpinList ==> NotSerializableException
  2. Try using an ArrayList<SpinXmlElement> ==> NotSerializableException
  3. Try using the SpinList converted to an ObjectValue ==> NoSuchElementException after the first asynchronous continuation…

#6

Hi Stefan,

Thanks for the test case. Cases 1 and 2 are not expected to work because you attempt to use Java byte-serialization for classes that do not implement java.io.Serializable (SpinXmlElement and implementing classes). Case 3 does not work for the reason described here: Spin Plugin XML Serialization. Spin uses JAXB for XML serialization and you can’t serialize a plain Java ArrayList object via JAXB to anything meaningful, because ArrayList has no JAXB annotations. However, if you follow the advice given in that post, then you will probably hit another wall because serializing SpinXmlElement via JAXB will also not produce a meaningful result for the same reason.

Now the easiest way to make this work is by using an EL expression for the camunda:collection attribute.

  1. Assume we have a process variable called rootElement that is set to the following value: Spin.XML("<root><child1/><child2/></root>");
  2. Configure the camunda:collection attribute of the multi-instance task to be ${rootElement.childElements()}

Lastly, to make your tests fail properly, do the following:

  1. Deactivate the job executor
  2. Fetch jobs via ManagementService#createJobQuery
  3. Execute jobs via ManagementService#executeJob

That way, you can define the order in which you execute jobs and the jobs are executed in the context of the test thread (not of the job executor thread pool), so that execution failure properly bumps up to the JUnit runner.

Cheers,
Thorben


#7

Hi Thorben,

Thank you for your fast and detailed reply.
Now everything makes sense. :wink:

Also thank you for describing, how I can improve my tests. :smiley:

But I have still one last question on this topic:

  1. Assume we have a process variable called rootElement that is set to the following value: Spin.XML("<root><child1/><child2 id=“2”/><child3 id=“3”/><child4/></root>"); (Yes I partially copied that from your text… #sluggard XD)
  2. What if I needed to run through a list of variables that I get using a certain xpath on the rootElement? e.g. ${rootElement.xpath("./*[@id]").elementList()} <== Would this work? And more importantly: Would this also work, if the xpath was also saved in a process variable? e.g. ${rootElement.xpath(myXpath).elementList()}

And lastly:
Would it be possible to create a JAXB wrapper class for a list implementation and for the SpinXmlElement class and use them together as XmlValue? I know that sounds pretty exaggerated, but I’m curious. :wink:

Thank you for your help! I really love the support you’re giving to your community. :smiley:

Greetings, Stefan


#8

Hi Stefan,

Yes this should work. Be aware that internally the engine evaluates the expression once per instance. So make sure your expression always resolves into the same result.

Should work, just try it out :slight_smile:

I think, in theory yes, but I don’t think this is a good idea. Be aware that SpinXmlElement represents some portion of XML that was parsed into some kind of Java object structure. So when you attempt to “naively” serialize SpinXmlElement via JAXB, you will get XML that represents this wrapper object, not the originally wrapped XML and the resulting XML is probably going to be useless. I can imagine that it would be possible to configure serialization in a way that it actually outputs the original XML (after all, SpinXmlElement still provides access to it) and to get deserialization right as well, but I expect a lot of problems until you get there.

Cheers,
Thorben


#9

Now I know everything that I need to know.
Thank you very much for your help.

Have a nice day! :smiley: