我有以下情况:

我想要做的是在我的Angular应用程序中获得一个下拉菜单,其中列出了所有图书的机会。所以我可以在“哈利波特”、“白鲸”和“鲁滨逊漂流记”之间做出选择。当我选择一本书并按下submit时,我会通过REST发送一个帖子/complete。
它应该看起来像这样,因此选项应该始终与Camunda模型中的相同:

我在这里的问题是:我如何通过REST获得可以选择哪些书的信息?这是可能的吗?这是应该怎么做的吗?
发布于 2020-07-03 03:50:13
我从你的问题中了解到,你想要访问网关路由值,并在到达那里之前将其转换为下拉菜单。据我所知,这是不可能的。网关只是查找执行路径的if-else条件。您可以通过将此下拉列表传递给流程执行、将其保留在某个脚本中或通过rest apis获取数据来创建此下拉列表。
发布于 2020-07-05 03:08:07
有一个选择可能会对你有所帮助。其思想是获取流程定义的BPMN2.0XML。您可以解析xml并获得网关或任何元素。
标准结果是一个转义的XML字符串,其中包含部署此定义时所使用的XML。
版本7.0和7.13
Camunda的应用程序接口具有以下端点/process-definition/{id}/xml。它返回进程定义的BPMN 2.0 XML。
版本7.13
添加了额外的端点,
返回不属于任何租户的过程定义的最新版本的XML
获取/process-definition/key/{key}/xml
返回租户流程定义的最新版本的XML
获取/process-definition/key/{key}/tenant-id/{tenant-id}/xml
结果
请求
http://localhost:5115/engine-rest/process-definition/Process_16yhb92:1:1605d9ef-be29-11ea-a3af-0242ac160003/xml图表

您的XML应该如下所示:
"bpmn20Xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<bpmn:definitions xmlns:bpmn=\"http://www.omg.org/spec/BPMN/20100524/MODEL\" xmlns:bpmndi=\"http://www.omg.org/spec/BPMN/20100524/DI\" xmlns:dc=\"http://www.omg.org/spec/DD/20100524/DC\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:di=\"http://www.omg.org/spec/DD/20100524/DI\" id=\"Definitions_0tnus7x\" targetNamespace=\"http://bpmn.io/schema/bpmn\" exporter=\"Camunda Modeler\" exporterVersion=\"3.5.0\">\n <bpmn:process id=\"Process_16yhb92\" isExecutable=\"true\">\n <bpmn:startEvent id=\"StartEvent_1\">\n <bpmn:outgoing>SequenceFlow_05h0ut0</bpmn:outgoing>\n </bpmn:startEvent>\n **<bpmn:exclusiveGateway id=\"ExclusiveGateway_1\">\n**
...
...
sourceRef=\"Task_1mivaws\" targetRef=\"ExclusiveGateway_1\" />\n https://stackoverflow.com/questions/62634391
复制相似问题