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

简介:
接口  使 用户能够...
 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());
}








本文转自 牛海彬 51CTO博客,原文链接:http://blog.51cto.com/newhappy/77262,如需转载请自行联系原作者
目录
相关文章
|
25天前
|
前端开发 C# Android开发
2024年全面的多端统一开发解决方案推荐!
2024年全面的多端统一开发解决方案推荐!
102 0
2024年全面的多端统一开发解决方案推荐!
|
1月前
|
敏捷开发 数据可视化 BI
工作流管理是什么?5款企业工作流管理工具推荐!
工作流管理是一种使处理过程自动化、协调人和应用工具完成工作的技术。它通过规划、组织、协调和控制业务流程,确保工作高效、准确地完成。工作流管理可以提高工作效率、规范业务流程、增强协同工作能力、优化决策支持,并提升企业竞争力。本文介绍了5款工作流管理软件:板栗看板、Trello、Asana、Jira 和 Monday.com,它们各具特色,适用于不同的场景和需求。
工作流管理是什么?5款企业工作流管理工具推荐!
|
7月前
|
前端开发
基于jeecgboot流程管理平台的自定义业务表单集成方法
基于jeecgboot流程管理平台的自定义业务表单集成方法
169 0
|
运维 监控 网络协议
统一运维监控平台设计思路| 学习笔记
快速学习统一运维监控平台设计思路。
统一运维监控平台设计思路| 学习笔记
|
运维 监控 网络协议
统一运维监控平台设计思路
一、 监控平台的思路 二、 ganglia的安装 三、 yum方式安装ganglia
统一运维监控平台设计思路
|
敏捷开发 存储 数据可视化
低代码开发平台核心功能设计——组件自定义交互实现
笔者最近一直在研究Lowcode(低代码)平台, 也做了非常多的实践, 对于页面可视化搭建平台有了基本的研发方向和解决方案, 后期会陆续分享我对低代码平台的一些理解和解决方案, 并在企业应用层做一些探索.
1362 0
|
运维 数据可视化 关系型数据库
工具应用最佳实践系列之——逻辑编排
本篇文章将为大家介绍如何使用阿里云逻辑编排,轻松实现阿里云账单定时自动化导入自己的数据库,便于后续分析。
工具应用最佳实践系列之——逻辑编排