首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在activiti explorer外部启动activiti进程,并在activiti explorer内完成该进程。

在activiti explorer外部启动activiti进程,并在activiti explorer内完成该进程。
EN

Stack Overflow用户
提问于 2015-06-11 22:19:28
回答 2查看 2.1K关注 0票数 1

我对activiti比较陌生,我想知道是否有任何方法可以在activiti explorer中使用java代码部署甚至启动一个进程,例如,运行一个java应用程序为kermit创建一个任务,然后登录到activiti explorer并完成它。

EN

回答 2

Stack Overflow用户

发布于 2015-06-12 20:58:45

当然,这可以通过Activiti REST API和Activiti Java API实现。

如果您想在自己的java应用程序中启动进程,可以设置一个java maven项目并导入必要的Activiti APIs (http://activiti.org/community.html)。

Activiti Explorer包含自己的Activiti Process Engine实例。您的应用程序也将拥有自己的实例。两个应用程序共享同一数据库(例如MySQL)是一种常见的方法

看看这张照片,取自“行动中的行动”一书:

有关Activiti Java API,请参阅Activiti Java Guide:http://activiti.org/javadocs/

要启动一个进程,您可以像这样使用RuntimeService

代码语言:javascript
复制
ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault()
.buildProcessEngine();

RuntimeService runtimeService = processEngine.getRuntimeService();

ProcessInstance processInstance = 
runtimeService.startProcessInstanceByKey("processId");

假设您将第一个任务定义为UserTask,并将kermit定义为assignee。执行完java代码后,Kermit可以登录到Activiti Explorer,他将看到他的任务。要实现这一点,两个应用程序必须共享同一数据库。

过程定义的部署也是可能的。看看RepositoryService。

票数 1
EN

Stack Overflow用户

发布于 2015-06-12 21:12:28

正如@Ben很好地解释的那样,与流程引擎交互的关键通常是决定流程引擎是在与您的应用程序相同的进程中引导,还是已经在提供REST API ( activiti -rest web应用程序)的另一个web应用程序中运行,或者是另一个web应用程序,该web应用程序可能不提供直接REST API,但可以通过UI执行许多与工作流相关的任务(Activiti explorer web应用程序可能使用直接的activiti java API进行交互)。通过这种方式,Activiti非常灵活。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30783474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档