we have a simple process containing start event, service task (async) + end event.
We start it embedding the process engine (within a JUnit - Test) - and get the following ibatis error:
Nov 07, 2013 5:16:01 PM org.camunda.bpm.engine.impl.interceptor.CommandContext close
SEVERE: Error while closing command context
org.apache.ibatis.exceptions.PersistenceException:
### Error updating database. Cause: org.apache.ibatis.reflection.ReflectionException: Illegal overloaded getter method with ambiguous type for property scope in class class org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity. This breaks the JavaBeans specification and can cause unpredicatble results.
### Cause: org.apache.ibatis.reflection.ReflectionException: Illegal overloaded getter method with ambiguous type for property scope in class class org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity. This breaks the JavaBeans specification and can cause unpredicatble results.
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23)
at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:150)
at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:137)
at org.camunda.bpm.engine.impl.db.DbSqlSession.flushInserts(DbSqlSession.java:679)
at org.camunda.bpm.engine.impl.db.DbSqlSession.flush(DbSqlSession.java:499)
at org.camunda.bpm.engine.impl.interceptor.CommandContext.flushSessions(CommandContext.java:211)
at org.camunda.bpm.engine.impl.interceptor.CommandContext.close(CommandContext.java:154)
at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:49)
at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:32)
at org.camunda.bpm.engine.impl.RuntimeServiceImpl.startProcessInstanceByKey(RuntimeServiceImpl.java:58)
at com.olia.processes.test.NegotiationProcessTest.testNegotiation(NegotiationProcessTest.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
at org.junit.rules.TestWatchman$1.evaluate(TestWatchman.java:53)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)
at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:158)
at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:86)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:95)
Caused by: org.apache.ibatis.reflection.ReflectionException: Illegal overloaded getter method with ambiguous type for property scope in class class org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity. This breaks the JavaBeans specification and can cause unpredicatble results.
at org.apache.ibatis.reflection.Reflector.resolveGetterConflicts(Reflector.java:136)
at org.apache.ibatis.reflection.Reflector.addGetMethods(Reflector.java:110)
at org.apache.ibatis.reflection.Reflector.<init>(Reflector.java:62)
at org.apache.ibatis.reflection.Reflector.forClass(Reflector.java:463)
at org.apache.ibatis.reflection.MetaClass.<init>(MetaClass.java:34)
at org.apache.ibatis.reflection.MetaClass.forClass(MetaClass.java:38)
at org.apache.ibatis.reflection.wrapper.BeanWrapper.<init>(BeanWrapper.java:37)
at org.apache.ibatis.reflection.MetaObject.<init>(MetaObject.java:51)
at org.apache.ibatis.reflection.MetaObject.forObject(MetaObject.java:59)
at org.apache.ibatis.session.Configuration.newMetaObject(Configuration.java:447)
at org.apache.ibatis.scripting.xmltags.DynamicContext.<init>(DynamicContext.java:43)
at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:36)
at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:275)
at org.apache.ibatis.executor.statement.BaseStatementHandler.<init>(BaseStatementHandler.java:61)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.<init>(PreparedStatementHandler.java:36)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.<init>(RoutingStatementHandler.java:42)
at org.apache.ibatis.session.Configuration.newStatementHandler(Configuration.java:464)
at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:43)
at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:100)
at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:75)
at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:148)
... 43 more
Camunda dependencies: version: 7.0.0-Final
<dependency>
<groupId>org.camunda.bpm</groupId>
<artifactId>camunda-engine</artifactId>
</dependency>
<dependency>
<groupId>org.camunda.bpm</groupId>
<artifactId>camunda-engine-spring</artifactId>
</dependency>
Database used: Postgres or H2 - same results..
Process definition:
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_eJ7OYEerEeOasLbqT8CwDg" targetNamespace="http://activiti.org/bpmn">
<bpmn2:collaboration id="_Collaboration_5">
<bpmn2:participant id="_Participant_5" name="Pool" processRef="NEGOTIATE_AGREEMENTS_ID"/>
</bpmn2:collaboration>
<bpmn2:process id="NEGOTIATE_AGREEMENTS_ID" name="NEGOTIATE_AGREEMENTS1" isExecutable="true">
<bpmn2:startEvent id="StartEvent_1" name="Start Event">
<bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
</bpmn2:startEvent>
<bpmn2:endEvent id="EndEvent_1" name="End Event">
<bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
</bpmn2:endEvent>
<bpmn2:serviceTask id="ServiceTask_1" camunda:expression="#{oliaReceiver.receive('BlaBla')}" camunda:async="true" name="Service Task">
<bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
</bpmn2:serviceTask>
<bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="ServiceTask_1"/>
<bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ServiceTask_1" targetRef="EndEvent_1"/>
</bpmn2:process>
<bpmndi:BPMNDiagram id="_BPMNDiagram_3" name="NEGOTIATE_AGREEMENTS1">
<bpmndi:BPMNPlane id="_BPMNPlane_3" bpmnElement="_Collaboration_5">
<bpmndi:BPMNShape id="_BPMNShape_StartEvent_6" bpmnElement="StartEvent_1">
<dc:Bounds height="36.0" width="36.0" x="107.0" y="166.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_EndEvent_5" bpmnElement="EndEvent_1">
<dc:Bounds height="36.0" width="36.0" x="453.0" y="181.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds height="22.0" width="65.0" x="439.0" y="222.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_Participant_5" bpmnElement="_Participant_5" isHorizontal="true">
<dc:Bounds height="220.0" width="554.0" x="0.0" y="76.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_ServiceTask_9" bpmnElement="ServiceTask_1">
<dc:Bounds height="80.0" width="100.0" x="277.0" y="159.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_6" targetElement="_BPMNShape_ServiceTask_9">
<di:waypoint xsi:type="dc:Point" x="143.0" y="184.0"/>
<di:waypoint xsi:type="dc:Point" x="210.0" y="184.0"/>
<di:waypoint xsi:type="dc:Point" x="210.0" y="199.0"/>
<di:waypoint xsi:type="dc:Point" x="277.0" y="199.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ServiceTask_9" targetElement="_BPMNShape_EndEvent_5">
<di:waypoint xsi:type="dc:Point" x="377.0" y="199.0"/>
<di:waypoint xsi:type="dc:Point" x="453.0" y="199.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn2:definitions>
Das war es! Ich bedanke mich herzlich für die schnelle Hilfe!

Caused by: org.apache.ibatis.reflection.ReflectionException: Illegal overloaded getter method with ambiguous type for property processInstance in class class org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity. This breaks the JavaBeans specification and can cause unpredicatble results. at org.apache.ibatis.reflection.Reflector.resolveGetterConflicts(Reflector.java:136) at org.apache.ibatis.reflection.Reflector.addGetMethods(Reflector.java:110) at org.apache.ibatis.reflection.Reflector.<init>(Reflector.java:62) at org.apache.ibatis.reflection.Reflector.forClass(Reflector.java:463) at org.apache.ibatis.reflection.MetaClass.<init>(MetaClass.java:34) at org.apache.ibatis.reflection.MetaClass.forClass(MetaClass.java:38) at org.apache.ibatis.reflection.wrapper.BeanWrapper.<init>(BeanWrapper.java:37) at org.apache.ibatis.reflection.MetaObject.<init>(MetaObject.java:51) at org.apache.ibatis.reflection.MetaObject.forObject(MetaObject.java:59) at org.apache.ibatis.session.Configuration.newMetaObject(Configuration.java:447) at org.apache.ibatis.scripting.xmltags.DynamicContext.<init>(DynamicContext.java:43) at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:36) at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:275) at org.apache.ibatis.executor.statement.BaseStatementHandler.<init>(BaseStatementHandler.java:61) at org.apache.ibatis.executor.statement.PreparedStatementHandler.<init>(PreparedStatementHandler.java:36) at org.apache.ibatis.executor.statement.RoutingStatementHandler.<init>(RoutingStatementHandler.java:42) at org.apache.ibatis.session.Configuration.newStatementHandler(Configuration.java:464) at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:43) at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:100) at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:75) at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:148)