Cannot register service org.camunda.bpm.platform.job-executor.process-application:type=workflow-processes with MBeans Container, service with same name already registered.
Thanks, that really helps me understand why two instances were created and stepping over each other. Now, lets try extending SpringProcessApplication
I’m generally confused about whether or not @ProcessApplication annotation is required?
public class ProcessLauncherSpring extends SpringProcessApplication {
@Override
public TaskListener getTaskListener() { ...}
@Override
public ExecutionListener getExecutionListener() { ...}
}
Does the browser console show an error (accesible via F12)?
Did you recently update Camunda or access different Camunda versions with your browser? Then clearing the browser cache might help.
As for the @ProcessApplication annotation: It is required if you want to set any of its attributes (custom name or path to processes.xml). When using a ServletProcessApplication, it is also required to trigger deployment. With a SpringProcessApplication this is afaik not required because it implements org.springframework.context.ApplicationListener and deployment is triggered via Spring lifecycle callbacks.
I think I know what the problem is: Instead of extending SpringProcessApplication, extend SpringServletProcessApplication. That is required for Camunda to pick up your web application’s servlet context so that it can resolve the path to your forms. I ninja-edited my second last post and should have made that more clear
public class ProcessLauncherSpring extends SpringServletProcessApplication implements InitializingBean {
@Override
public TaskListener getTaskListener() {...}
@Override
public ExecutionListener getExecutionListener() {..}
@Override
public void afterPropertiesSet() throws Exception {
// call method from SpringProcessApplication to invoke the deployment
super.afterPropertiesSet();
}
}
Hi @thorben,
I wonder if you could point me into right direction…
I’m trying to extend from SpringServletProcessApplication also following the example below.
The only difference is I have custom user task forms.
After deployment, my forms are not loading due to Form failure: The context path is either empty or not defined.
Question is how or where can I specify the contextPath?
I am facing the same problem. However, the proposed solution didn’t work for me.
My setup: shared engine on tomcat (prepackaged Tomcat). I am deploying Spring-Camunda-War.
I want to register a process engine plugin in processes.xml. When I do so, I get the above mentioned error. If I remove the @ProcessApplication annotation, the process application is not registered any more and for example no prcess models get deployed.
Is there anything else I have to do to make it work?