Camunda Spring Boot启动器与嵌入式表单

6

我希望使用嵌入式表单和Camunda Spring Boot启动器中的开始事件。

我的开始事件描述如下:

<bpmn:startEvent id="StartEvent_1" name="Rechnungseingang" camunda:formKey="embedded:app:forms/rechnungseingang.html">
  <bpmn:outgoing>SequenceFlow_0dtfc1a</bpmn:outgoing>
</bpmn:startEvent>

表单本身位于“src/main/webapp/forms/rechnungseingang.html”,据我所知,这应该是正确的路径。
如果我尝试在启动spring boot应用程序后启动流程,则会收到错误消息:“表单失败:上下文路径为空或未定义。”
在浏览器控制台中,我可以看到一个请求http://localhost:8080/test/api/engine/engine/default/process-definition/Rechnungseingang:1:927f0aa4-e590-11e7-973d-e2cbd8678b9f/startForm和响应。
{"key":"embedded:app:forms/rechnungseingang.html","contextPath":null}

很明显应用程序无法处理上下文路径中的空值。我如何在Spring Boot中为Camunda设置上下文路径?在application.properties中,我已尝试设置server.context-path,但没有效果。
1个回答

15

1.) Spring Boot 应用程序没有 src/main/webapp 目录,应使用 src/main/resources/static。

2.) 要将资源链接到 Camunda 引擎,您需要一个进程应用。只需在 Spring Boot 应用程序中添加 "@EnableProcessApplication" 即可轻松完成此操作。

3.) 自动部署需要一个 src/main/resources/META-INF/processes.xml 文件,但可以将其保留为空。

4.) 这里有一个嵌入式表单与 Camunda Spring Boot 的完整示例:https://github.com/camunda/camunda-bpm-examples/tree/master/spring-boot-starter/example-twitter


谢谢你的回答,你提供的建议组合解决了我的问题。我本来期望启动器可以为我完成配置(因为已经部署了可启动的流程定义),但似乎仍然存在一些配置开销。 - javahippie
新版本中有什么变化吗?我不得不将embedded:app:forms/rechnungseingang.html(使用OP的示例)更改为embedded:/forms/rechnungseingang.html,使用完整路径而不是应用程序键才能使其正常工作。 - Dalton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接