做视频网站一般多少钱,杭州建站,河南最新新闻头条,江苏外协机械加工网这一集提示和技巧将帮助您了解根据需要启动流程实例的最佳方法。 规划项目可能包括流程项目#xff0c;但是您是否考虑过可以启动流程的各种方式#xff1f; 也许您的JBoss BPM Suite在您的体系结构中本地运行#xff0c;也许您在云中运行#xff0c;但是无论它在哪里但是您是否考虑过可以启动流程的各种方式 也许您的JBoss BPM Suite在您的体系结构中本地运行也许您在云中运行但是无论它在哪里您仍然需要就如何启动流程做出明智的选择。 我们将在此处介绍三种可以最好地启动JBoss BPM流程的基本方法 UI仪表板 RestAPI 客户端应用程序API 右上角的“构建和部署”按钮。 BPM Suite用户界面 为了完整性我们不得不提到启动流程实例的功能是以JBoss BPM Suite仪表板工具内的按钮的形式存在的。 登录JBoss BPM Suite之后您已经完成了项目开发然后可以按以下步骤构建和部署BPM项目。 AUTHORING - PROJECT AUTHORING - TOOLS - PROJECT EDITOR - BUILDDEPLOY (button) 下一步是以两种方式之一在流程管理透视图中启动流程实例。 1. PROCESS MANAGEMENT - PROCESS DEFINITIONS - start-icon2. PROCESS MANAGEMENT - PROCESS DEFINITIONS - magnifying-glass-icon - in DETAILS panel - NEW INSTANCE (button) 流程定义的右上角有开始图标。 这两种方法都会导致流程实例启动如果要将数据提交到BPM流程则会弹出一个启动表单。 RestAPI 假设您打算在从多个可能的位置进行部署之后开始BPM流程我们希望向您展示如何轻松地集成它们。 流程定义的详细信息视图具有“新实例”按钮。 是从Web应用程序移动应用程序启动流程还是为企业创建后端服务以用作流程的起点都没有关系。 公开的RestAPI提供了触发BPM流程的完美方法可以在以下代码示例中进行显示。 此示例是一个非常简单的Rest客户端为清楚起见它将把可能传递给此类客户端的各种变量直接嵌入到示例代码中。 没有任何变量传递给正在启动的流程为此我们将在涵盖客户端应用程序的部分中提供一个更完整的示例。 它发送一个启动流程命令并且不希望来自被调用的客户评估BPM流程的任何反馈因为它是直通式流程STP。 public class RestClientSimple {private static final String BASE_URL http://localhost:8080/business-central/rest/;private static final String AUTH_URL http://localhost:8080/business-central/org.kie.workbench.KIEWebapp/j_security_check;private static final String DEPLOYMENT_ID customer:evaluation:1.0;private static final String PROCESS_DEF_ID customer.evaluation;private static String username erics;private static String password bpmsuite;private static AuthenticationType type AuthenticationType.FORM_BASED;public static void main(String[] args) throws Exception {System.out.println(Starting process instance: DEPLOYMENT_ID);System.out.println();// start a process instance with no variables.startProcess();System.out.println();System.out.println(Completed process instance: DEPLOYMENT_ID);}/*** Start a process using the rest api start call, no map variables passed.* * throws Exception*/public static void startProcess() throws Exception {String newInstanceUrl BASE_URL runtime/ DEPLOYMENT_ID /process/ PROCESS_DEF_ID /start;String dataFromService getDataFromService(newInstanceUrl, POST);System.out.println(newInstanceUrl:[newInstanceUrl]);System.out.println(--------);System.out.println(dataFromService);System.out.println(--------);}...SNIPPED MORE CODE...
} 这里的基本知识是指向起始 RestAPI调用的业务中心URL的设置。 在主要方法中可以找到对startProcess的方法调用该方法将构建RestAPI URL并捕获从JBoss BPM Suite发送的数据答复。 要查看实现方法的详细信息请在JBoss BPM Suite和JBoss Fuse Integration Demo项目中完整地参考该类。 测试间奏 构建和部署流程后对其进行测试的一种简便方法是使用curl通过RestAPI将请求推送到流程。 这样的请求如下所示首先是通用形式然后是与上一个示例中使用的相同的客户评估项目的真实运行。 通用的RestAPI调用和正确的身份验证请求在curl中完成如下所示 $ curl -X POST -H Accept: application/json -uerics http://localhost:8080/business-central/rest/runtime/customer:evaluation:1.1/process/customer.evaluation/start?map_par1var1↦_par2var2 对于客户评估过程使用curl调用启动过程对我们的用户进行身份验证并收到JBoss BPM Suite的响应的完整周期应该提供以下输出。 $ curl -X POST -H Accept: application/json -uerics http://localhost:8080/business-central/rest/runtime/customer:evaluation:1.1/process/customer.evaluation/start?map_employeeericsEnter host password for user erics: bpmsuite1!{status:SUCCESS,url:http://localhost:8080/business-central/rest/runtime/customer:evaluation:1.1/process/customer.evaluation/start?map_employeeerics,index:null,commandName:null,processId:customer.evaluation,id:3,state:2,eventTypes:[]} 我们的卷曲测试结果。 如图所示我们在流程实例透视图中看到流程实例已完成。 客户申请 启动JBoss BPM Suite流程实例的第三种也是最后一种方法是与注入一堆预定义的提交内容相结合以填充报告历史记录并且可以基于历史数据。 我们提供的大多数演示项目中都提供了此处显示的示例但该示例取自Mortgage演示项目 。 该演示客户端正在使用静态数据线一次将其插入到进程中。 通过一些小的调整就可以从现有数据源中提取历史数据并以这种格式注入所需数量的进程。 这也是对流程项目进行压力测试的好方法。 如上所示我们将跳过会话和流程细节的设置而是提供指向整个演示客户端类的链接并将这些细节留给读者。 在这里我们仅关注各个启动过程调用的外观。 public static void populateSamples(String userId, String password, String applicationContext, String deploymentId) {RuntimeEngine runtimeEngine getRuntimeEngine( applicationContext, deploymentId, userId, password );KieSession kieSession runtimeEngine.getKieSession();Map processVariables;//qualify with very low interest rate, great credit, non-jumbo loanprocessVariables getProcessArgs( Amy, 12301 Wilshire, 333224449, 100000, 500000, 100000, 30 );kieSession.startProcess( com.redhat.bpms.examples.mortgage.MortgageApplication, processVariables );} 如您所见最后一行是个人抵押贷款提交被推送到JBoss BPM Suite的位置。 如果检查课程的其余部分您会发现多个条目是一个接一个地启动的。 我们希望您现在对启动过程并选择最适合您项目需求的方法有很好的了解。 翻译自: https://www.javacodegeeks.com/2014/09/3-essential-ways-to-start-your-jboss-bpm-process.html