Integrating DMN with bpm-server.xml

I’m using the shared container version of 7.6.0 on Tomcat with MySQL.

I want to integrate the DMN and the process engine is configured using the bpm-server.xml. The documentation refers to both the java API and spring XML.

I’ve tried to configure the bpm-server.xml but I’m having trouble to add the variable defaultInputExpressionExpressionLanguage to the XML file. I’ve assumed that dmnEngineConfiguration is a property inside like this:-

  <process-engine name="default">
    <job-acquisition>default</job-acquisition>
    <configuration>org.camunda.bpm.engine.impl.cfg.StandaloneProcessEngineConfiguration</configuration>
    <datasource>java:jdbc/ProcessEngine</datasource>

    <properties>
      <property name="history">full</property>
      <property name="databaseSchemaUpdate">true</property>
      <property name="authorizationEnabled">true</property>
      <property name="jobExecutorDeploymentAware">true</property>
      <property name="dmnEngineConfiguration">org.camunda.bpm.dmn.engine.impl.DefaultDmnEngineConfiguration</property>
    </properties>

  </process-engine>

</bpm-platform>

So first off, is the dmnEngineConfiguration placed in the correct place? And then where should ExpressionLanguage go?

Thanks

Hi @theHornet,

I don’t think such way of configuration is supported right now, since dmn engine itself is a compound object, bpm-platform element would have to support extra element inside of it, which is not present in xsd.

Can you stick to spring or java based configuration?

If not, you could always provide pull request with implementation.

Cheers,
Askar.

OK, I guess I can look at deploying to the cloud and calling the decisions there. Would you happen to know the availability of the Camunda cloud?

Hi @theHornet,

by referring to camunda cloud you mean https://dmn.camunda.cloud/? If yes then right now according to terms of use it should not be used in production environment.

Additionally, after small internal discussion, I can recommend you to create a plugin which will inject proper dmn engine configuration into your process engine. You can find examples and documentation here https://docs.camunda.org/manual/7.6/reference/deployment-descriptors/descriptors/bpm-platform-xml/#example-1
and here https://github.com/camunda/camunda-bpm-examples/tree/master/process-engine-plugin

Cheers,
Askar

1 Like