I was able to go from Activiti 5.22.0 to Flowable 5.22.0 and then 5.23.0. Now I am testing the move from v 5.23.0 to 6.0.0. According to the Migration Guide, I have the following setup:
<bean id="processEngineConfiguration" class="org.flowable.spring.SpringProcessEngineConfiguration" >
<property name="flowable5CompatibilityEnabled" value="true" />
<property name="flowable5CompatibilityHandlerFactory" ref="flowable5CompabilityFactory" />
...
<bean id="flowable5CompabilityFactory" class="org.activiti.compatibility.spring.SpringFlowable5CompatibilityHandlerFactory" />
Also included in my pom.xml: flowable5-compatibility, flowable5-spring, flowable5-spring-compatibility
When I try to deploy the app, I am getting the following exception:
java.lang.NoSuchMethodError: org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.setFlowable5CompatibilityHandler
Am I missing something else?
Hi Ivan.
try
org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl.
Regards
Martin
Martin,
The only org.activiti reference that I use in my configuration is the org.activiti.compatibility.spring.SpringFlowable5CompatibilityHandlerFactory. I tried using org.flowable.compatibility.spring.SpringFlowable5CompatibilityHandlerFactory as states in the Flowable Migration Guide, but I get java.lang.ClassNotFoundException.
Thanks,
–Ivan
Here is the exception that I am getting:
Caused by: java.lang.NoSuchMethodError: org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.setFlowable5CompatibilityHandler(Lorg/flowable/engine/compatibility/Flowable5CompatibilityHandler;)Lorg/activiti/engine/impl/cfg/ProcessEngineConfigurationImpl;
at org.flowable.compatibility.DefaultProcessEngineFactory.copyConfigItems(DefaultProcessEngineFactory.java:51)
at org.activiti.compatibility.spring.DefaultSpringProcessEngineFactory.buildProcessEngine(DefaultSpringProcessEngineFactory.java:32)
at org.flowable.compatibility.DefaultFlowable5CompatibilityHandler.getProcessEngine(DefaultFlowable5CompatibilityHandler.java:945)
at org.flowable.compatibility.DefaultFlowable5CompatibilityHandler.getRawProcessEngine(DefaultFlowable5CompatibilityHandler.java:925)
at org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl.buildProcessEngine(ProcessEngineConfigurationImpl.java:834)
at org.flowable.spring.SpringProcessEngineConfiguration.buildProcessEngine(SpringProcessEngineConfiguration.java:68)
at org.flowable.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:57)
at org.flowable.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:32)
at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:168)
Hi,
That’s not true. See exception:
try
org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl.
Regards
Martin
Martin,
You are suggesting to “try org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl”, but where do I need to use it in my configuration setup? I just don’t get it.
–Ivan
Hi Ivan,
My assumption is that you are calling setFlowable5CompatibilityHandler
method on org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl
. There is no such a method, because compatibility handler was implemented in org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl
.
This compatibility handler is between activiti -> flowable. It dos not make sense to set in on activiti procecess engine configuration.
Regards
Martin