构建富互联网应用程序监控工作流和流程(3)

简介: 接口  使 用户能够...  IDeliveryService  从 BPEL 流程域上部署的流程中调用实例 ...
接口  使 用户能够...
 IDeliveryService  从 BPEL 流程域上部署的流程中调用实例
 IBPELProcessHandle  浏览 BPEL 流程域上部署的 BPEL 流程
 IInstanceHandle  对 活动实例执行操作
 ITask  与 流程域中已经实例化的任务交互
 IWorklistService  搜索 并完成已经从流程域中实例化的任务

  您已经了解了 RIA 和 BPELService 的基本组件,下面将介绍它们如何协同提供丰富的最终用户体验。

  运行新帐户流程

  如前所述,首先向客户显示工作流面板中的输入屏幕以输入 SSN。当用户单击 Submit 时,将使用 ActionScript 创建一个“新帐户应用程序”XML 文档,并通过 Flex 的远程对象体系结构将其传递给 BPELService 服务器端 Java 类。(这使 Flex 能够直接与 BPELService 等 Java 对象进行通信。)Java 组件使用 IDeliveryService 接口的实例初始化 BPEL 流程。随后,如下所示,initiateProcess Java 方法将新创建的业务流程实例的实例引用 ID 返回给 Flex 客户端。随后的操作中使用此引用 ID 将相应的业务流程实例作为目标。

/**
* This function initiates an instance of a BPEL PM process based on the
* process name.The function sets the function id and the reference id for
* future use.
*
* @param xmlRequest
*            is the initiating request message for the process
* @param strBusinessProcess
*            the business process name
* @return the initiating response message for the process
*/
public String initiateProcess(Document xmlRequest, String strBusinessProcess) {
 
System.out.println("Initiate" + strBusinessProcess);
/*
* This interface allows users to invoke instances from processes
* deployed on a BPEL process domain.
*/
IDeliveryService deliveryService = getDeliveryService();
/*
* Construct the normalized message and send to Oracle BPEL process
* manager
*/
NormalizedMessage nm = new NormalizedMessage();
nm.addPart(PAYLOAD, xmlRequest.getDocumentElement());
 
NormalizedMessage responseNm = null;
try {
responseNm = deliveryService.request(strBusinessProcess, PROCESS,
nm);
} catch (Exception e){
e.printStackTrace();
throw new RuntimeException("Could not initialize process.");
}
Map payload = responseNm.getPayload();
Document xmlResponse = getXMLDoc(XMLHelper
.elementToString((Element) payload.get(PAYLOAD)));
/*
* Sets the Instance reference ID for interagating active BPEL
* instances.
*/
setInstanceReferenceId(strBusinessProcess, xmlResponse);
 
return XMLHelper.elementToString(xmlResponse.getDocumentElement());
}
 
相关文章
|
JSON 数据可视化 前端开发
逻辑编排在优酷可视化搭建中的实践(二) - 编排器与业务
说到逻辑编排大家应该都不陌生了,目前我们集团有多面向后端的逻辑编排技术专项,且没有统一的标准、沉淀通用的方案。也有前端逻辑编排项目,但均面向前端开发提效的逻辑编排,而我们是要打造一个面向非研发人员,可让他们根据图形化组件搭建出逻辑的平台。
683 0
逻辑编排在优酷可视化搭建中的实践(二) - 编排器与业务
|
数据库 数据安全/隐私保护
OA系统启动:基础数据,工作流设计
自从开源OA系统启动:系统概览放 出来后。园友们反馈了一些不错的建议。主要集中在工作流部分。本来是先不考虑工作流部分。这些天的交流和思考。决定把工作流部分作为系统基础结构贯穿整个 系统。所以先考虑了这个部分的设计,因为这部分的设计是否合理关系到整个系统是否可以继续和是否有实际价值的问题。
1133 0
|
运维 数据可视化 关系型数据库
工具应用最佳实践系列之——逻辑编排
本篇文章将为大家介绍如何使用阿里云逻辑编排,轻松实现阿里云账单定时自动化导入自己的数据库,便于后续分析。
工具应用最佳实践系列之——逻辑编排

热门文章

最新文章