I tried to load my custom beans on flowable spring context modules, but without success.
Now, I’m thinking about load all modules (modeler, task, rest, idm, admin) in one spring boot app, because, I believe, in my app, it will be easy to load my spring beans.
Does someone did something similar?
Interesting question. Does anyone have an answer ?
The way that we handle this is to have a project structure that supports ‘common’ projects. These projects hold model, serviceTasks and reusable beans that are referenced from the other (service) projects. This prevents circular references, keeps the concerns separated (model, utility, business logic etc) and is generally good practice. It results in a little more complex project structure but this is easily handled by Maven (not so well in Gradle). Here is an example:
project-master (Main pom for dependency/plugin management )
- |_____ project-common
– |________ project-model (business entity classes)
– |________ project-service-tasks (java service tasks)
– |________ project-service-utilities (reusable service support components) - |______ project-services
– |________ project-workflow (Spring boot and Flowable)
– |________ project-entity-service (REST service for business entities)
A little more work up front but it saves major headaches down the line.
Why do you need to run all Flowable apps in one application?
Usually your custom logic is part of the task or rest applications. Those two contain the Flowable Engines.
One really important thing is that you should not run the task and rest applications at the same time. Both of them are running the core engines, so you should pick one of those.