Form engine not initialized?

Hi,

I am using Flowable 6.3.1-RELEASE libraries in order to develop a simple API which needs to expose some basic engine operation via a REST API.
One of this operations is to allow users to retrieve the complete historic of the form properties for a given task.
I followed the instructions in the chapter 5a “Spring Boot” , “Flowable Starters” and " “Combining starters” of the Flowable User guide to set up a simple flowable engines configuration :

“In case you need only a combination of the engines then you can add only the required depdenencies. For example to use the Process, CMMN, Form and IDM engine and use LDAP you need to add the following dependencies: […]”

The problem is, when I try org.flowable.engine.TaskService#getTaskFormModel to get the org.flowable.form.api.FormInfo for the Historic task definition provided by the user, it subsequently calls org.flowable.engine.impl.cmd.GetTaskFormModelCmd which attempt to get a reference of the org.flowable.form.api.FormService by doing a call to org.flowable.engine.impl.util.CommandContextUtil#getFormService. Bad surprise : this reference is NULL. I’ve debug the bootstrap sequence and I saw the Form engine was correctly initialized (one can see this also in the aplication logs : “2018-11-19 18:43:13.796 INFO 13388 — [ main] o.f.form.engine.impl.FormEngineImpl : FormEngine default created”
I think this may be related to the CommandContext retrieved with org.flowable.common.engine.impl.context.Context#getCommandContext which is relates to the current execution thread but I cannot see where can be the error…

I also try to use the information in the topic Form engine not initialized error but it seems not be related to my case.

Thank you in advance for your help !

Eugene

Hey Eugene,

Having the null reference in the org.flowable.engine.impl.util.CommandContextUtil#getFormService is indeed not OK.

Is it possible for you to create a small reproducal project that we could have a look at?

I would also advise you to run your application with Spring Boot debug set to true and check that formEngineConfigurator and formProcessEngineConfigurationConfigurer beans are present.

Cheers,
Filip

Hello Filip,

Thank you for your answer !
Finally I’ve manage to build a working version.
I may be wrong but it seems to me the spring configuration given as example in the Flowable official documentation (v.6.4.0) in the paragraph “5.7.13. Advanced Configuration/Customizing Engine Configuration” is missing a configurator reference :
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-form-spring-configurator</artifactId>
<version>${flowable.version}</version>
</dependency>

Thanks again for your help !

Eugene

Hey Eugene,

You are right that dependency was missing in the documentation. We have update it (see this commit) and it would be there in the next release.

Thanks for spotting this and letting us know.

Cheers,
Filip