# Flowable-spring-boot-starter-rest not registering endpoints

**URL:** <https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794>\
**Category:** Flowable Engine\
**Created:** [August 23, 2023, 4:21pm UTC](https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794 "2023-08-23T16:21:53Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mateusz](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.flowable.org/mateusz/32/3251_2.png) [@mateusz](https://forum.flowable.org/u/mateusz)\
**Post date:** [August 23, 2023, 4:21pm UTC](https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794/1 "2023-08-23T16:21:53Z")

</div>

Hello everyone,  
I spent a day trying to figure that out, followed a bunch of tutorials (ie. [this one](https://www.businessprocessincubator.com/content/building-your-own-flowable-spring-boot-application/)) and I have no luck. I’m trying to run Flowable in a spring boot app and expose the REST endpoints, so that other service could just call the `POST /repository/deployments`. The endpoints are just not there. I added Actuator to see the mappings and the Flowable endpoints are not there (my custom controller is, so the Spring configuration generally works).

My `build.gradle`:

```auto
plugins {
	id 'java'
	id 'org.springframework.boot' version '3.1.2'
	id 'io.spring.dependency-management' version '1.1.2'
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-actuator'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.flowable:flowable-spring-boot-starter-rest:6.8.0'
    runtimeOnly 'com.h2database:h2'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'org.springframework.security:spring-security-test'
}

```

The `application.properties`:

```auto
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=ALWAYS

```

The logs output:

```auto
18:19:30: Executing 'bootRun'...

> Task :compileJava UP-TO-DATE
> Task :processResources UP-TO-DATE
> Task :classes UP-TO-DATE
> Task :resolveMainClassName UP-TO-DATE

> Task :bootRun

  . _______ _ _
 /\\ / ___'___ _ _(_)_ ____ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/ ___)| |_)| | | | | || (_| | ) ) ) )
  ' | ____| .__ |_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot :: (v3.1.2)

2023-08-23T18:19:31.690+02:00 INFO 29329 --- [main] c.b.f.FlowableRestApplication : Starting FlowableRestApplication using Java 17.0.7 with PID 29329 (/Users/mpiatkowski/work/sandbox/flowable-rest/build/classes/java/main started by mpiatkowski in /Users/mpiatkowski/work/sandbox/flowable-rest)
2023-08-23T18:19:31.692+02:00 INFO 29329 --- [main] c.b.f.FlowableRestApplication : No active profile set, falling back to 1 default profile: "default"
2023-08-23T18:19:32.271+02:00 INFO 29329 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2023-08-23T18:19:32.276+02:00 INFO 29329 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2023-08-23T18:19:32.277+02:00 INFO 29329 --- [main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.11]
2023-08-23T18:19:32.335+02:00 INFO 29329 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2023-08-23T18:19:32.336+02:00 INFO 29329 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 618 ms
2023-08-23T18:19:32.654+02:00 INFO 29329 --- [main] o.s.b.a.e.web.EndpointLinksResolver : Exposing 13 endpoint(s) beneath base path '/actuator'
2023-08-23T18:19:32.691+02:00 INFO 29329 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2023-08-23T18:19:32.699+02:00 INFO 29329 --- [main] c.b.f.FlowableRestApplication : Started FlowableRestApplication in 1.178 seconds (process running for 1.346)

```

The endpoints are not there. Am I missing some configuration?

---

<div class="post-metadata">

**Author:** ![filiphr](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.flowable.org/filiphr/32/315_2.png) [@filiphr](https://forum.flowable.org/u/filiphr)\
**Post date:** [August 23, 2023, 8:30pm UTC](https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794/2 "2023-08-23T20:30:52Z")

</div>

The controllers are there. Try accessing the REST API and you’ll see it.

The reason why you don’t see them in the `actuator/mappings` after the start is due to the fact the we use different Dispatcher Servlets for each of the different engines. In addition to that, those dispatcher servlets are loaded lazily.

In order to access them you’ll need to put the right servlet context path. e.g. for the Process engine it would be `process-api`. So for your example it would be a GET `process-api/repository/deployments` to list the available deployments

Once you try to reach some of the APIs you’ll be able to see them in `actuator/mappings` as well.

What you can also do is to load the servlets synchronously during server startup. You can do this by setting the following properties;

- `flowable.process.servlet.load-on-startup=1` - For the `/process-api`
- `flowable.cmmn.servlet.load-on-startup=1` - For the `/cmmn-api`
- `flowable.dmn.servlet.load-on-startup=1` - For the `/dmn-api`

Hope this helps.

Cheers,  
Filip

---

<div class="post-metadata">

**Author:** ![mateusz](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.flowable.org/mateusz/32/3251_2.png) [@mateusz](https://forum.flowable.org/u/mateusz)\
**Post date:** [August 24, 2023, 8:21am UTC](https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794/3 "2023-08-24T08:21:03Z")

</div>

Hi @filiphr,  
thank you for your explanation. Unfortunatelly this also doesn’t work. I was trying that before finding a few similar threads on this forum. I tried:

- just call `GET http://localhost:8080/process-api/repository/deployments`
- Add `flowable.process.servlet.load-on-startup=1` and try the same endpoint again

In both cases I’m getting 404s. There must be something missing I don’t understand.

EDIT:  
I pushed my code to Github, if that helps: [GitHub - renegat59/flowable-rest-test: Test of Setting up Flowable with REST endpoints](https://github.com/renegat59/flowable-rest-test)

---

<div class="post-metadata">

**Author:** ![mateusz](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.flowable.org/mateusz/32/3251_2.png) [@mateusz](https://forum.flowable.org/u/mateusz)\
**Post date:** [August 25, 2023, 9:21am UTC](https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794/4 "2023-08-25T09:21:53Z")

</div>

Hi @filiphr ,  
I discovered interesting thing. Now I follow [this presentation](https://www.youtube.com/watch?v=N9x-lZ_IwdM) and I found out, that the endpoints are being exposed when I use this exact versions that are used in the presentation:

- Spring 2.6.8
- Flowable 6.7.2
- Java 11

So I started testing different configurations, and it came out that updating Spring to 2.7.14, Flowable to 6.8.0 and Java to 17 didn’t change anything. However **updating Spring Boot to 3.1.2** breaks it. The endpoints just stop responding.

I did some more testing and it looks like Flowable 6.8.0 doesn’t work with any Spring Boot 3.x version. It will only work if I update Flowable to version 7.0.0 which I understand is not a production ready version. I didn’t see it in any documentation which is a pity.

Anyway, the problem is solved. Thanks for your support!

---

<div class="post-metadata">

**Author:** ![filiphr](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.flowable.org/filiphr/32/315_2.png) [@filiphr](https://forum.flowable.org/u/filiphr)\
**Post date:** [September 11, 2023, 6:47am UTC](https://forum.flowable.org/t/flowable-spring-boot-starter-rest-not-registering-endpoints/10794/5 "2023-09-11T06:47:19Z")

</div>

Hey @mateusz,

Indeed Flowable 6.x only works with Boot 1.x and 2.x. Spring Boot 3.x is Java 17 baseline and Jakarta namespaces. Therefore we have a milestones releases for Flowable 7 to work with Spring Boot 3.x.

Cheers,  
Filip
