Flowable 7.0.0 is not autodeploying BPMNs

145 views Asked by At

I am trying to upgrade to Spring Boot 3.1.3 and Java 17 and Flowable 7.0.0. When I build the application and look in the target folder I don’t see the BPMN under /classes. The BPMN is located under src/main/resources/processes

In the logs I see this:

o.f.s.b.ProcessEngineAutoConfiguration : No deployment resources were found for autodeployment

I have also tried to deploy it manually:

@Autowired
private ProcessEngine processEngine;

var repositoryService = processEngine.getRepositoryService();
String nameWithExt = "processes/" + xmlName + ".bpmn20.xml";
Deployment deployment = repositoryService.createDeployment().addClasspathResource(nameWithExt).deploy();

LOGs:
2023-11-10T12:55:49.089-07:00 INFO 46563 — [nio-8082-exec-4] c.c.web.rest.controller.AdminResource : Going to deploy new process definition RecertificationProcess with extension processes/RecertificationProcess.bpmn20.xml
2023-11-10T12:55:49.104-07:00 ERROR 46563 — [nio-8082-exec-4] c.c.web.rest.controller.AdminResource : Error deploying process definition resource ‘processes/RecertificationProcess.bpmn20.xml’ not found
2023-11-10T12:55:49.105-07:00 ERROR 46563 — [nio-8082-exec-4] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path  threw exception [Request processing failed: com.comcast.exceptions.FlowableApiError: resource ‘processes/RecertificationProcess.bpmn20.xml’ not found] with root cause

com.comcast.exceptions.FlowableApiError: resource ‘processes/RecertificationProcess.bpmn20.xml’ not found
2

There are 2 answers

0
Saideep Ullal On BEST ANSWER

As mentioned here in the flowable docs, https://www.flowable.com/open-source/docs/bpmn/ch05a-Spring-Boot

Any BPMN 2.0 process definitions in the processes folder will be automatically deployed.

Your problem seems to be classpath related. You could also instruct flowable to use a folder for autodeployment by using these properties in your application.properties file.

flowable.process-definition-location-prefix=classpath*:/processes/
flowable.process-definition-location-suffixes=**.bpmn20.xml,**.bpmn

You can learn more about these properties here. https://www.flowable.com/open-source/docs/bpmn/ch05a-Spring-Boot#flowable-application-properties

1
Valentina Carrington On

Thank you for your response. I did that too. The issue was with the way I was reading application.yml from the pom file. I got it all working. Thank you.