Custom Embedded .html forms not detected by camunda engine | Micronaut

Use Case:
We have a Micronaut Project using camunda engine dependencies.
On startup the bpmn file gets auto deployed and i am able to see and start the process from cockpit, But the process has couple of user tasks where we have set custom external form like this camunda:formKey="embedded:deployment:forms/start-form.html". Which camunda is not able to detect.
I have created the forms folder inside resources folder and kept my start-form.html file inside forms folder.
But still when i open the user task from tasklist it shows below error

 Form failure: The form with the resource name 'forms/start-form.html' cannot be found in deployment.

Below are the dependencies i have used in my pom.xml

    <dependency>
      <groupId>info.novatec</groupId>
      <artifactId>micronaut-camunda-bpm-feature</artifactId>
      <version>2.10.0</version>
    </dependency>
    <dependency>
      <groupId>info.novatec</groupId>
      <artifactId>micronaut-camunda-external-client-feature</artifactId>
      <version>2.9.0</version>
    </dependency>
    <dependency>
      <groupId>org.camunda.bpm</groupId>
      <artifactId>camunda-engine-plugin-spin</artifactId>
      <version>7.18.0</version>
    </dependency>
    <dependency>
      <groupId>org.camunda.spin</groupId>
      <artifactId>camunda-spin-dataformat-all</artifactId>
      <version>1.18.0</version>
    </dependency>

and below is the application yml configuration

micronaut:
  application:
    name: dummy-process
  server:
    port: 8082

datasources:
  default:
    driverClassName: org.postgresql.Driver
    db-type: postgresql
    schema-generate: CREATE_DROP
    dialect: POSTGRES
    url: jdbc:postgresql://localhost:5432/camunda
    username: camunda
    password: 123

jpa:
  default:
    properties:
      hibernate:
        hbm2ddl:
          auto: update
        show_sql: false

camunda:
  webapps:
    enabled: false
  rest:
    enabled: false
  generic-properties:
    properties:
      history: full

camunda.external-client:
  base-url: http://localhost:8081/engine-rest

below is the processes.xml file inside META-INF folder inside resources folder

<?xml version="1.0" encoding="UTF-8"?>
<process-application
  xmlns="http://www.camunda.org/schema/1.0/ProcessApplication"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <process-archive>
    <process-engine>default</process-engine>
    <resource>forms/start-form.html</resource>
    <properties>
      <property name="isDeleteUponUndeploy">false</property>
      <property name="isScanForProcessDefinitions">true</property>
    </properties>
  </process-archive>

</process-application>

PS: This setup used to work with SpringBoot project when using camunda engine dependencies of spring boot but for some reason its not working in micronaut steup

Any help will be greatly appreciated

Hi @ajay_srivas,

the files ending with .form will not be picked up for a deployment automatically.

In your setup you can control the deployed resources in the processes.xml file. Have a llok at the docs for additionalResourcesSuffixes: Process Archive Configuration | docs.camunda.org

Hope this helps, Ingo

Hi @Ingo_Richtsmeier

I don’t have any files with .form extension instead i have .html file which i am trying to deploy as Embedded or External Task Form for user tasks

I followed the link you shared and modified the processes.xml file as below

<?xml version="1.0" encoding="UTF-8"?>
<process-application
  xmlns="http://www.camunda.org/schema/1.0/ProcessApplication"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <process-archive>
    <process-engine>default</process-engine>
    <resource>start-form.html</resource>
    <properties>
      <property name="isDeleteUponUndeploy">false</property>
      <property name="isScanForProcessDefinitions">true</property>
      <property name="additionalResourceSuffixes">.html</property>
    </properties>
  </process-archive>

</process-application>

But i still see the same error after rebuilding the project :confused: