I find it non-trivial to deploy camunda spring-boot to web application container

I created a new spring-boot project with camunda initializr and try to deploy it to a fresh tomcat.

I want to used the embedded Process Engine and the embedded Webapp.
I search everywhere. there is some guides about how to deploy application to web application container with shared Process Engine. but I failed to find any guide on how to deploy the spring-boot project as whole.

the changes I made to the project:
changed packaging to war in pom.xml
declare the tomcat in spring-boot to provided scope.
Spring-boot main class extended SpringServletInitializr
Overrided the configure method

yet when I deploy my war to fresh tomcat. Server cannot find the context root of the project. and I didn’t see Process Engine being initialized.

Why? Spring boot already has tomcat contained inside it, why would you want to deploy it to a tomcat server?

If you want to deploy a war file to tomcat there’s no need to have the engine inside it.
The engine and front end applications should be on the tomcat servers and the war file only needs to contain the process models, forms, java classes and other artifacts.

I need to deploy to web servlet container because our CI pipeline eventually runs our packaged wars in
a IBM Liberty server. I am thinking if I can still make it work as embedded Process Engine bundled with
webapp and my BPMN models with this limitation.

You mean the correct approach will need me to deploy 1.the process-engine 2.the web-app 3.my process models forms etc.

What about the tomcat standalone war, I see both the process engine and webapp bundled inside. But I cannot find the source for that.

I figured out basically I want the Camunda-standalone-tomcat.war but also with source so that I may build it. Or I will have to reverse engineer it.

Hi @LevinHelix,

you can start here: camunda-bpm-platform/distro/tomcat/webapp-standalone at master · camunda/camunda-bpm-platform · GitHub.

With open source software there is no need to reverse engineer.

Hope this helps, Ingo

2 Likes