集成 IBM Business Process Manager V8 与企业内容管理系统
连接:http://www.ibm.com/developerworks/cn/bpm/bpmjournal/1212_ramos/1212_ramos.html
集成 IBM Business Process Manager V8 与企业内容管理系统
简介
业务流程往往需要处理非结构化数据,如扫描的文档或图片。IBM Business Process Manager V8(以下简称 IBM BPM)提供无缝集成 Enterprise Content Management (ECM) 系统的能力,后者专门处理这种类型的数据。
IBM BPM 使用 Content Management Interoperability Services(CMIS,内容管理互操作性服务)标准来连接到 ECM 系统。在本文中,我们将演示如何配置从 IBM BPM 到 ECM 系统的连接。然后,我们将构建一个人工服务,包括在 Coach 中的文档列表和查看功能。
先决条件
为了完成本文中的步骤,您需要运行 IBM BPM 开发环境和已创建的现有流程应用程序,并在 Process Designer 中打开它们。
您还需要让 ECM 系统启动并运行,展示符合 CMIS 1.0 规范的 Web 服务。此类 ECM 服务器的示例包括 IBM FileNet P8、IBM Content Manager 和 Alfresco。请注意,虽然 IBM FileNet P8 产品中包含了 CMIS,但 CMIS 是一个独立的可选安装。在本文中,我们使用了一个 IBM FileNet P8 实例。
创建 ECM 服务器定义
首先,您必须在流程应用程序中定义 ECM 服务器连接,让您可以在服务和 coach 中使用它。要将服务器定义添加到流程应用程序设置,请执行以下步骤:
- 在 Process Designer 中,转到 Process App Settings 并单击 Servers 选项卡,如图 1 所示。
图 1. 选中 Process App Settings 中的 Servers 选项卡
- 填写服务器配置选项,如图 2 所示。选中 Enterprise Content Management Server 作为服务器类型。然后指定 CMIS 服务器的主机名、HTTP 端口,以及托管 CMIS Web 服务的 Web 应用程序的上下文根。(对于 FileNetP8,默认的上下文根示例是
fncmis
,对于 Alfresco,该示例是alfresco/cmis
)。完成剩下的字段,包括存储库名称(由 ECM 系统定义)和身份验证选项。
图 2. ECM 服务器定义
Always Use This Connection Information 选项告诉 IBM BPM 对每个 ECM 服务器都使用该 userid 和密码。这意味着,每一个 ECM 交互都使用一个通用的用户,并且最终用户的身份没有从 IBM BPM 传递给 ECM 服务器。
如果您想在 BPM 中使用用户的身份进行 ECM 交互,您必须取消选中该复选框。但是,请记住,如果您这样做,则需要在 IBM BPM 和 ECM 应用程序服务器之间配置一个单点登录机制,本文中不打算介绍该机制。
- 单击 Test Connection 验证 ECM 连接是否已正确配置。如果您收到一个错误消息,则应该通过检查 IBM BPM SystemOut.log 文件执行进一步的调查。
使用 Content Management 工具包
IBM BPM 包括一个工具包,它提供若干个 ECM 资产,比如针对 ECM 访问的预构建资产。
将 ECM 工具包添加到您的流程应用程序
您需要将该工具包添加到您的流程应用程序,以便在您的流程中使用所需的组件。
- 单击 Process Designer 中 Toolkits 部分旁边的加号 (+),如图 3 所示。
图 3. 添加工具包依赖关系
- 选择 Content Management 下面的 8.0 快照,如图 4 所示。
图 4. 选择 8.0 工具包
将示例 AJAX 搜索服务复制到您的流程应用程序中
IBM BPM 使用 Ajax 服务实现 ECM 服务器交互。搜索文档及其元数据等操作中包括了一些基本服务。这些服务可供 ECM coach 控件使用,这些控件让您可以列出和查看 ECM 服务器上的文档。
您不需要从头开始操作,您可以执行下列操作,复制一个由该工具包提供的基本搜索服务的副本:
- 从 Content Management 工具包将 Default ECM Search Service 复制到您的流程应用程序,在 Content Management 工具包上单击 User Interface,然后右键单击 Default ECM Search Service,如图 5 所示。
图 5. 复制一个样例 Ajax 服务
重命名 Ajax 服务
- 单击流程应用程序库中的 User Interface 部分。
- 右键单击 Default ECM Search Service 并选中 Rename,如图 6 所示。
图 6. 重命名 Ajax 服务
- 为新复制的 Ajax 服务指定一个名称。在本例中,我们将使用
My ECM Search Service
。
定制 ECM Search 服务
刚刚复制和重命名的 Ajax 服务只是一个模板,它包含 ECM 集成所需的输入和输出变量。然而,它不提供任何具体操作。您现在需要定制它,让它执行所需的操作,在本例中,需要在 ECM 服务器上执行搜索,查找将要在 coach 中列出的文档。
定义 Ajax 服务流程图
- 打开之前复制的 ECM Search 服务,如图 7 所示。
图 7. 打开 Ajax 服务
- 执行以下操作,将 Content Integration 组件添加到该服务:
- 删除 Start 和 End 事件之间的线
- 在它们之间放置一个 Content Integration 组件,如图 8 所示,并将其重命名为有意义的名称。在本例中,我们称其为
Get Documents
。
图 8. 添加 Content Integration 组件
- 将组件连接到 Start 和 End 事件,如图 9 所示。
图 9. 连接 Ajax 服务中的元素
配置 Content Integration 组件
配置 Content Integration 组件,如下:
- 单击您刚才添加到 Ajax 服务的 Content Integration 组件。
- 在 Properties 选项卡的 Implementation 部分,将 Server Name 设置为您在 Process App Settings 中创建连接时所指定的名称。
- 选中 Search 作为 Operation name。
图 10. 配置 Content Integration 组件
- 在 Properties 选项卡的 Data Mapping 部分,将每个输入和输出变量映射到相应的私有变量,如图 11 所示。
图 11. 执行数据映射
定义内容过滤器
现在,你需要定义从 ECM 服务器中为特定的流程实例和 ECM 集成服务实现选择哪些文档。在 IBM BPM 中,您可以通过直观的方式指定选择标准。在后台,Process Designer 生成适当的 CMIS SELECT 查询,包含所需的子句和参数。
- 单击 ECM Search 服务的 Content Filters 选项卡,如图 12 所示。
图 12. 内容过滤器
- 在 Object Type 下面,您可以选择由您的 ECM 系统所管理的任何文档类,如图 13 所示。不同的文档类具有不同的属性,可在查询中使用。在本例中,我们将使用来自我们的 ECM 服务器的根 Document 类。
图 13. 指定一个文档类
- 如果您愿意,可以添加更多的文档属性列,单击 Add 按钮,使其显示在文档列表中,如图 14 所示。
图 14. 添加文档类属性
我们在本例中不会添加更多的列,所以您不需要单击 Add,您的屏幕不会和图示完全一样。 - 如果您愿意,也可以定义选择标准,在运行时用于过滤列出的文档,如图 15 所示。
图 15. 指定文档搜索标准
通过将任意文档属性匹配到一个字符串值,可以构建搜索条件。
tw.local.cmisQuery
变量可作为 Ajax 服务的输入参数之一,并且应该用来传递一个来自 coach 的字符串值。与上一步一样,我们在本例中不会执行该操作,所以您不需要单击 Add Search Criterion,您的屏幕不会和图示完全一样。
利用 ECM 内容构建 coach
您刚完成了用于在 ECM 服务器中搜索文档的服务的创建。现在您将构建 coach,向流程的最终用户列出它并显示文档。
创建人工服务和 coach
- 创建新的人工服务。
- 将一个新的 coach 添加到服务,如图 16 所示,并双击它。
图 16. 在人工服务上的 coach
- 将 Document List 和 Document Viewer 控件拖放到 coach,如图 17 所示。这些控件位于调色板的 Content 部分。
图 17. 构建 coach
- 单击 Document List 1 控件,然后单击属性的 Configuration 部分,并填写各字段,如图 18 所示:
- 选中 Allow Create 和 Allow Update。
- 指定
10
作为要显示的结果数量。 - 对于 Search 选项,选中您之前创建的 ECM Search 服务。
图 18. Document List 控件配置
配置 ECM 控件上的变量绑定
完成以下步骤,配置 ECM 控件上的变量绑定:
- 创建新的变量,用于存储由搜索返回的文档列表,如图 19 所示:
- 单击人工服务的 Variables 选项卡。
- 创建新的私有变量,其名称为
documentInfoList
,类型为ECMDocumentInfo
。 - 选中 Is List。
- 选中 Has Default。
图 19. 在人工服务中添加变量
- 为 Document List 控件设置绑定,如下所示:
- 转到编辑器中的 Coaches 选项卡。
- 单击 Document List 控件。
- 单击 Properties 选项卡的 General 部分。
- 在 Binding 属性中,选中您之前创建的 documentInfoList,如图 20 所示。
图 20. 为 Document List 控件设置绑定
- 为 Document Viewer 控件设置绑定,如下所示:
- 转到编辑器中的 Coaches 选项卡。
- 单击 Document Viewer 1 控件。
- 为 Document Viewer 控件选择绑定
- 在 coach 上单击 Document Viewer 控件,然后单击 Properties 选项卡的 General 部分。
- 在 Binding 属性中,选中您之前创建的 documentInfoList 的 listSelected (ECMDocumentInfo) 字段,如图 21 所示。
图 21. 为 Document Viewer 控件指定绑定
利用 ECM 内容集成测试 coach
执行以下操作,测试 coach:
- 单击右侧的 Playback 按钮,如图 22 所示。
图 22. 运行 coach
- Coach 在新的浏览器窗口打开,并显示存储在您的 ECM 中的文档的列表,如图 23 所示。您可以使用 Actions 图标来查看内容或元数据。您也可以使用 Create Document 按钮来上传新的文档。
图 23. Coach 执行
结束语
本文介绍了利用存储在 Enterprise Content Management(企业内容管理系统)中的内容来构建 coach 的过程。虽然本文重点介绍了列出通用内容的基本步骤,但您可以配置不同的文档类和元数据,以便使用特定类型的内容。
集成 IBM Business Process Manager V8 与企业内容管理系统的更多相关文章
- Java Business Process Management(业务流程管理) 初识环境搭建
一.简介 (一)什么是jbpm JBPM,全称是Java Business Process Management(业务流程管理),它是覆盖了业务流程管理.工作流.服务协作等领域的一个开源的.灵活的.易 ...
- Dynamic CRM 2013学习笔记(三十九)流程2 - 业务流程(Business Process Flows)用法详解
业务流程(Business Process Flows)是CRM 2013 里一个新的流程,它提供了可视化的流程表现.业务人员创建有效.流线型的业务流程让最终用户知道当前在哪.下一步要做什么,用户可以 ...
- ubuntu上安装nginx+mysql+php5-fpm(PHP5 - FastCGI Process Manager)
题外话:由于近段时间测试环境ssh链路质量不大好,经常短线.故我把整个安装过程放到screen里去执行,以防止断线中断了安装过程.执行screen -S install,这样断线后,只要再执行scre ...
- architecture and business process modelling
bpmn 架构相关的文章: 转自:https://www.heflo.com/definitions/architecture-business-process-modeling/ BPMN Mode ...
- Modernizing Business Process with Cloud and AI
The world is awash with digital transformation. Every customer and partner that I talk to, across ev ...
- ABAP术语-Business Process
Business Process 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/11/1035316.html A prepared sce ...
- Business Process and SAP ERP
1. Definition of Organisation - Organizations are created entities within and through which people i ...
- Dynamics CRM - 通过 C# Plugin 来 abandon Business Process Flow
需求说明: 当一个 Entity 存在 Business Process Process 时,有时我们需要改变其状态,在之前写的博客有讲了可以通过 JavaScript 来实现,本篇就来讲一下如何通过 ...
- 读《31天学会CRM项目开发》记录2 - 企业信息管理系统
在信息技术的快速推动下,企业如果依然利用传统的管理方式,以人为主,那效率便会大打折扣.在此背景下,企业信息化系统得 到了高速发展.如我们常见的ERP系统.MES系统,都是提高公司运行效率,降低运营以及 ...
随机推荐
- 【SqlServer】T-SQL的简介及基本用法
一.T-SQL概述 SQL Server用于操作数据库的编程语言为Transaction-SQL,简称T-SQL.T-SQL与PL/SQL不同,并没有固定的程序结构.T-SQL包括以下4个部分: DD ...
- API接口规范
协议 API与用户的通信协议,总是使用HTTPs协议,确保交互数据的传输安全. 域名 应该尽量将API部署在专用域名之下. https://api.example.com 如果确定API很简单,不会有 ...
- 兼容chrome和ie的wav音乐播放(Ie7 Ie8 Ie9 均测试过 )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- process credentials(二)
一.前言 为什么要写一个关于进程如何创建的文档?其实用do_fork作为关键字进行索引,你会发现网上的相关文档数以万计.作为一个内核工程师,对进程以及进程相关的内容当然是非常感兴趣,但是网上的资料并不 ...
- ios开发中用过的一些外部库总结 cocoapods list
下面几个库是在之前的一个ios app开发中使用过的一些外部库: 1. zbar :2. shakebox :3. processbar :4. tableviewcontroller :新版的sta ...
- U811.1接口EAI系列之二-BOM构成-委外BOM构成--VB语言
1.下面代码实现了VB6.0中调用U8EAI-BOM构成服务,以下代码均为项目实际代码,可直接复制应用. 2.在u811.1版本中委外BOM构成与正常的BOM构成是同系列表,不单独存储. 3.是以存货 ...
- Elasticsearch的基友Logstash(转)
Logstash 是一款强大的数据处理工具,它可以实现数据传输,格式处理,格式化输出,还有强大的插件功能,常用于日志处理. 一.原理 Input可以从文件中.存储中.数据库中抽取数据,Input有两种 ...
- fcitx五笔的安装[zz]
Fcitx──小企鹅输入法:Free Chinese Input Toy for X是国产软件的精品,是一个以GPL方式发布的.基于XIM的简体中文输入法集合(原为G五笔),包括五笔.五笔拼音.二笔. ...
- Oozie4.2 安装部署、以及example测试
编译: 使用的环境是:Hadoop2.6.0.Spark1.4.0.Hive0.13.1.Sqoop1.4.4 编译Oozie的命令:./mkdistro.sh -Phadoop-2 -Dhadoop ...
- [sql]生产库全备/mysql库体积大小查看
将生产db全备到内网某机器 两个思路: 1, 直接内网mysqldump导出. 因为阿里云的rds只有私网ip,所以办公网机器无法直接连到rds执行mysqldump 解决: 通过ssh tunnel ...