我想使用类似REST的API启动一个新的流程实例。
根据jBPM Documentnation(7.5.0.Final),possible使用Javascript API启动带有表单的新流程实例。
我能够设置一个简单的html页面来调用jBPMFormsAPI
<head>
<script src="js/jbpm-forms-rest-integration.js"></script>
<script>
var formsAPI = new jBPMFormsAPI();
</script>
<script>
function showProcessForm() {
formsAPI.showStartProcessForm(
"http://localhost:8080/jbpm-console/",
"test-project_1.0.0",
"test-project.SampleProcess",
"myform"
);
}
</script>
</head>
<body>
<input type="button" id="showformButton"
value="Show Process Form" onclick="showProcessForm()">
<p/>
<div id="myform"></div>
</body>
但是,当我按下404 Not Found
按钮时,我有Show Process Form
-
Chrome开发者工具 - 网络标签有REST调用:
http://localhost:8080/jbpm-console/rest/runtime/myproject_1.0/process/myprocess/startform
REST API是否已更改且文档不是最新的,或者我做错了什么?
我知道可能会有什么帮助。在相同的环境中,KIE执行服务器具有Swagger文档:
http://localhost:8080/kie-server/docs/
KIE Workbench是否有相同的文档或如何启用它?
我想,它应该有类似的网址,但我也有404
的网址:
http://localhost:8080/jbmp-console/docs/
答案 0 :(得分:2)
我最初的猜测是正确的 - jBPM文档已经过时了7.5.0.Final并且从工作台启动进程的端点实际上是jBPM 6.x方式,即
http://localhost:8080/jbpm-console/rest/runtime/myproject_1.0/process/myprocess/startform
不再有效启动过程的请求。
作为证明,请立即查看实际文档。章节14. Forms
位于7.5.0.Final,但已在7.7.0.Final中完全删除(不再有关于js/jbpm-forms-rest-integration.js
的章节。)
启动流程的实际方法是调用KIE Server REST API:
例如,我使用以下curl
命令启动一个名为document
的简单字段的进程:
curl -X POST \
http://localhost:8081/kie-server/services/rest/server/containers/myproject_1.0/processes/process.main/instances \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/json' \
-d '{
"document": {
"DocumentImpl": {
"name": "document.zip",
"lastModified": "2018-03-28T07:55:06.922Z",
"size": "12",
"content": "UEsDBAoAAAAAAOh+fUwNuzSlFgAAABYAAAAIABwAZmlsZS50eHRVVAkAA/OpvFrzqbxadXgLAAEE6AMAAAToAwAAVGhpcyBpcyBvbmx5IGEgdGVzdC4KClBLAQIeAwoAAAAAAOh+fUwNuzSlFgAAABYAAAAIABgAAAAAAAEAAACkgQAAAABmaWxlLnR4dFVUBQAD86m8WnV4CwABBOgDAAAE6AMAAFBLBQYAAAAAAQABAE4AAABYAAAAAAA="
}
}
}'