IBM的WebSphere 业务集成的入门指南
使用WebSphere业务集成(WebSphere Business Integration,WBI)技术,可以构建企业级业务集成(BI)基础设施,从而更容易连接任何业务资源和功能,因此可以更快地适应客户和业务伙伴的需求。现在,本书给出了关于利用WBI创建基于标准的流程和数据集成解决方案的入门指导。
本书详尽解释了服务构件架构(SCA)、基本业务流程和长时间运行的复杂业务流程,并且指导你为自己的需求选择适当的流程集成架构。接下来,本书介绍了WBI解决方案的关键构件,并且说明了如何使它们快速、高效地协同工作。
本书还将帮助开发者、技术专家或管理者理解今天的关键BI问题和技术,并通过组合BI与面向服务的架构(SOA)来梳理业务流程。
本书内容包括
■ 链接BI、业务流程管理(BPM)和SOA。
■ BI场景、架构、模式和IBM Business Object Framework。
■ 利用WS-BPEL和其他行业标准进行业务编排。
■ 利用WebSphere Integration Developer和SCA编程模型进行BI开发。
■ WebSphere Process Server(WPS):用于面向服务应用的运行时环境。
■ 定义业务映射、规则、业务状态机和人工任务。
■ 管理BI服务:安全性、审计等。
■ 利用WebSphere适配器集成第三方系统和遗留系统。
■ 利用WebSphere Business Modeler 和 WebSphere Business Monitor。
■ 使用WebSphere Enterprise Service Bus(WESB)集成服务。
作者简介
Ashok Iyengar 圣地亚哥的IBM WebSphere Enablement团队的成员。在过去4年,他与WebSphere软件平台广泛协作,集中精力研究WebSphere Business Integration套件。他还与别人合著了《IBM WebSphere Portal Primer》一书。
Vinod Jessani 圣地亚哥的IBM WebSphere Enablement团队的资深软件工程师。他在分布式系统和联机事务处理系统方面有15年以上的工作经验。
Michele Chilanti IBM Software Services的具有顾问资格的IT专家。他每天都会为全世界的IBM客户提供咨询服务,为他们的J2EE和WebSphere 业务集成开发和部署项目提供支持。
无
基于业界标准创建以流程为中心的业务集成解决方案已经成为一种迫切的需求,本书正是为打算创建这种解决方案的人准备的。本书以需要理解业务集成的人和组织为目标读者,帮助这些读者理解业务集成的技术以及需要解决的问题。本书的作者在这个领域具有多年的工作经验,为我们提供了实际的部署示例、端到端的解决方案以及这个领域的最佳实践。
本书不但概括地介绍了业务集成的基本概念,更结合IBM的WebSphere 业务集成产品套件阐述了业务集成所必需的思想和解决方案,并且提供了真实的示例。正在使用或者准备使用WebSphere 业务集成技术的组织将会从这本书中获益。本书对准备第一次进行业务集成项目的专业人员也非常有帮助。
本书描述了SOA的产生,并介绍了服务构件架构(Service Component Architecture,SCA)。结合这种编程范式,本书介绍了大量的概念,例如基于业务对象(Business Object)和BPEL(Business Process Execution Language)的流程编排(choreography)、中介(mediation)、数据映射(data mapping)、关系(relationship)、动态选择器(dynamic selector)、业务规则(business rule)和后端适配器(backend adapter)等。作为其中每种能力的核心,IBM WebSphere Process Server包含了一个引人注目的简化的编程模型,用以编写业务集成应用。
本书同时讨论了流程(进行处理的功能流)和数据(在处理过程中所使用的信息)集成方案,既考虑了流程集成需要的基本的工作流、文档流和复杂的长业务流(longrunning business flow),又讨论了类似于规范的对象集线器的通用数据集成解决方案。此外也强调了Web Service的重要性。
从编程的角度讲,本书广泛涵盖了SCA、SCA交互模型(SCA Interaction Model)、业务图表(business graph)和业务对象框架(business object framework)等内容。本书也介绍了WebSphere软件的安装、设置、管理、调优和使用。另外,书中还提供了很多最佳实践的提示和建议。
第1、2、3章介绍了各种概念、术语和架构模式。
第4章介绍了WebSphere Integration Developer(WID),它是一个基于Eclipse的集成开发环境。
第5章介绍了IBM基于Java的运行环境——WebSphere Process Server。
第6、7、8章在技术上深入介绍了一个业务集成解决方案的各种构件。里面有详细的示例,用以说明如何创建基于BPEL的业务流程、业务规则(Business Rule)、业务映射(Business Map)、业务状态机(Business State Machine)等。
第9、10章讨论了多种不同的业务集成客户端,以及安全与日志的重要性。
第11章涉及了软件开发人员在业务集成方案中将会遇到的所有编程概念。
第12章相对独立地讨论了用于链接后端应用的业务集成适配器,以及实现这些适配器的挑战。
第13、14章通过WebSphere Business Modeler和WebSphere Business Monitor解释了业务建模(Business Modeling)和业务监控(Business Monitoring)的基本概念。
第15章探讨了企业服务总线(Enterprise Service Bus,ESB)和服务注册表(Service Registry),这两项正在变成所有业务集成解决方案的基础。
不论你是一位IT经理、IT架构师、大型企业的业务集成项目经理,或者是中小型公司的技术主管或开发人员,我们都希望本书能够在理解业务集成问题和SOA技术方面对你有所帮助。
IBM的WebSphere 业务集成的入门指南 使用WebSphere业务集成(WebSphere Business Integration,WBI)技术,可以构建企业级业务集成(BI)基础设施,从而更容易连接任何业务资源和功能,因此可以更快地适应客户和业务伙伴的需求。现在,本书给出了关于利用WBI创建基于标准的流程和数据集成解决方案的入门指导。 本书详尽解释了服务构件架构(SCA)、基本业务流程和长时间运行的复杂业务流程,并且指导你为自己的需求选择适当的流程集成架构。接下来,本书介绍了WBI解决方案的关键构件,并且说明了如何使它们快速、高效地协同工作。 本书还将帮助开发者、技术专家或管理者理解今天的关键BI问题和技术,并通过组合BI与面向服务的架构(SOA)来梳理业务流程。 本书内容包括 ■ 链接BI、业务流程管理(BPM)和SOA。 ■ BI场景、架构、模式和IBM Business Object Framework。 ■ 利用WS-BPEL和其他行业标准进行业务编排。 ■ 利用WebSphere Integration Developer和SCA编程模型进行BI开发。 ■ WebSphere Process Server(WPS):用于面向服务应用的运行时环境。 ■ 定义业务映射、规则、业务状态机和人工任务。 ■ 管理BI服务:安全性、审计等。 ■ 利用WebSphere适配器集成第三方系统和遗留系统。 ■ 利用WebSphere Business Modeler 和 WebSphere Business Monitor。 ■ 使用WebSphere Enterprise Service Bus(WESB)集成服务。 作者简介 Ashok Iyengar 圣地亚哥的IBM WebSphere Enablement团队的成员。在过去4年,他与WebSphere软件平台广泛协作,集中精力研究WebSphere Business Integration套件。他还与别人合著了《IBM WebSphere Portal Primer》一书。 Vinod Jessani 圣地亚哥的IBM WebSphere Enablement团队的资深软件工程师。他在分布式系统和联机事务处理系统方面有15年以上的工作经验。 Michele Chilanti IBM Software Services的具有顾问资格的IT专家。他每天都会为全世界的IBM客户提供咨询服务,为他们的J2EE和WebSphere 业务集成开发和部署项目提供支持。
当我们最初准备开发WebSphere Business Integration(WBI)60版本的时候,面向服务的架构(ServiceOriented Architecture,SOA)和业务流程管理(Business Process Management,BPM)还只是一些刚刚开始部署的相当新的概念。虽然许多基于J2EE标准的服务器已经形成了一个定义良好的应用服务器市场,但是由于各种各样的技术原因仍然有大量的产品和技术急需解决应用集成、业务集成、流程管理和其他相关的中间件问题。
在IBM,我们发现在自己的大量产品中也存在需要集成的地方。WebSphere MQ和WebSphere Message Broker之间很长的消息交换历史标志着IBM集成策略中的一个关键方面——连通性。另一端则是WBIServer Foundation(WBISF)作为一个策略性的流程引擎,该引擎使用了一个较早版本的BPEL规范,并建立于WebSphere Application Server Foundation之上。我们还有MQ Workflow和CrossWorlds InterChange Server(ICS),它们分别以传统的工作流和高级应用集成为中心。这些方案都具有不同的开发工具和不同的运行时执行架构。实际上,有一个称为WBI Server 4x的程序包套件,其中包含了MQWorkflow(MQWF)、Message Broker和CrossWorlds ICS,为所有需要WBI解决方案的用户提供了选择(可能会引起一些混淆)。与这些产品一起配套提供了一组适配器(它们是通过收购CrossWorld获得的)以及BPM的早期产品WBI Modeler和WBI Monitor,它们与MQWorkflow有着相对比较强的关连。
IBM软件集团的策略是围绕着WebSphere Application Server运行时环境,借助其强大、健壮的功能开发中间件产品。WBI团队的新使命是基于WebSphere Application Server Foundation提供一个结合了WBISF、CrossWorlds ICS和MQWF 能力的集成解决方案。配置、管理、工作负载管理、高可用性和安全性等很多方面都将依赖于WebSphere Application Server Foundation。这个整合的解决方案将能够提供一整套端到端的集成能力。如果用户需要解决多种不同的中间件问题,那么要管理的运行时环境将会少一些。
在早期,我们知道这些工作还是主要集中于WBI Server Version 60上。但是通过一系列的市场营销和命名活动,现在它已经改名为WebSphere Process Server(WPS)。这样,虽然WPS不只是针对流程而是一种更广泛的集成服务器,但是仍然沿用了WPS这个名字。
WPS及其相关开发工具(即WebSphere Integration Developer,WID)的关键目标之一是:无需强制编码和进行传统的基于编程语言的复杂开发就可以创建和组合解决方案。这样就可以使大量不具备J2EE技能或者只具备有限Java技能的工程师也能够构建解决方案,或者为此做出自己的贡献。这澄清了产品的发展方向,并且仍在对它产生影响。
为了实现这个目标,很显然只在J2EE编程模型的基础上创建几个奇特的编辑器是远远不够的。于是就发明了服务构件架构(Service Component Architecture,SCA),以提供服务调用模型和服务组合模型,这可以抽取出与特定的基础设施任务关联的细节。虽然SCA和SDO(Service Data Object,服务数据对象,用以提供一致的数据处理方法)一起帮助解决了WBI所面对的一些挑战,但是在SCA和SDO背后还有更加庞大的计划。这些技术以及Web Service和相关标准将构成IBM的SOA战略的基础。
随着BPM(Business Process Management,业务流程管理)的演进,我们的集成产品将逐步支持BPM模式。WebSphere Business Modeler和WebSphere Business Monitor产品为WPS提供了完整的BPM解决方案所需的补充功能。同WebSphere家族中的其他产品一样,这些产品构建于同样的基础之上(Monitor基于WebSphere Application Server,而Modeler基于Eclipse),并逐步发展到为运行WPS(和其他环境)的流程和服务提供一流的支持。
WebSphere Process Server和相关的WBI产品推出于2005年。从那时起已经发生了一些有趣的事情。我们看到很多新项目使用了WBI产品,其中一些是因为BPM方面的需求,而另外一些更多地关注连通性和应用集成方面的技术原因。WBI产品组已经成为我们在SOA和BPM方面努力的标志。这些都发生于用户开始从早期的WBI 服务器(即MQWorkflow、CrossWorlds ICS和WBISF)上移植走的时候。
同时,ESB(Enterprise Service Bus)运动也活跃了起来。2005年12月,IBM发布了WESB(WebSphere Enterprise Service Bus)产品。这个产品旨在为广大用户提供ESB能力。而从架构上讲,WESB中包含了与组成WPS相同的基础技术。事实上,在每个WPS中有足够的软件可以使它成为一个ESB。
本书为你提供了成功使用基于WBI第6版的产品所必需的基础概念。不管你是准备为SOA或者BPM机会做准备,还是为解决你所面对的其他集成挑战,你都能从本书中获得帮助。这些概念都是为了深入阐释WPS及相关产品的各种特性和功能而精心准备的。书中还使用了一些示例和图表来演示如何通过可用的能力来构建真实的解决方案。
Eric Herness
IBM杰出工程师
WBI首席架构师
Ashok Iyengar, Vinod Jessani, Michele Chilanti:暂无简介
陈宗斌:暂无简介
基于业界标准创建以流程为中心的业务集成解决方案已经成为一种迫切的需求,本书正是为打算创建这种解决方案的人准备的。本书以需要理解业务集成的人和组织为目标读者,帮助这些读者理解业务集成的技术以及需要解决的问题。
本书不但概括地介绍了业务集成的基本概念,更结合IBM的WebSphere Business Integration产品套件阐述了业务集成所必需的思想和解决方案,并且提供了真实的示例。本书描述了面向服务的架构(ServiceOriented Architecture,SOA)的产生,并介绍了服务构件架构(Service Component Architecture,SCA)。结合这种编程范式,本书介绍了大量的概念,例如基于业务对象(Business Object)和BPEL(Business Process Execution Language)的流程编排(choreography)、中介(mediation)、数据映射(data mapping)、关系(relationship)、动态选择器(dynamic selector)、业务规则(business rule)和后端适配器(backend adapter)等。作为其中每种能力的核心,IBM WebSphere Process Server包含了一个引人注目的简化的编程模型,用以编写业务集成应用。
本书同时讨论了流程(进行处理的功能流)和数据(在处理过程中所使用的信息)集成方案。既考虑了流程集成需要的基本的工作流、文档流和长时间运行的复杂业务流,又讨论了类似于规范的对象集线器的通用数据集成解决方案。此外也强调了Web Service的重要性。
本书简明易懂、图文并茂,示例丰富,非常适合于正准备尝试进行业务集成项目的专业人员阅读,正在使用或者准备使用WebSphere 业务集成技术的组织也将会从本书中获益。
参加本书翻译的人员有:陈宗斌、张景友、易小丽、陈婷、管学岗、王新彦、金惠敏、张海峰、徐晔、戴锋、张德福等。
由于时间紧迫,加之译者水平有限,错误在所难免,恳请广大读者批评指正。
2008年12月
Ashok Iyengar是以圣地亚哥为基地的IBM的资深软件工程师,拥有法戈市的北达科他州立大学(North Dakota State University, Fargo)的计算机科学的硕士学位。他在IT行业的工作时间超过了22年。在过去几年,他与WebSphere业务集成平台广泛协作,从事概念证明、项目试验和架构设计等工作。在闲暇时间,他喜欢写作。IBM Press出版的受欢迎的《WebSphere Portal Primer》一书就是他的作品之一。
Vinod Jessani是圣地亚哥的IBM WebSphere Enablement团队的资深软件工程师。他在分布式系统和联机事务处理系统方面有15年以上的工作经验。作为WebSphere Enablement团队的高级成员,他主持了销售前的各类活动,包括项目试验、概念证明和技术演示,这些涉及WebSphere Business Integration Server和WebSphere开发工具。他拥有印度的浦那大学(University of Poona, India)的计算机应用的硕士学位。
Michele Chilanti是IBM Software Services的具有顾问资格的IT专家。在他目前的位置,他每天都会咨询全世界的IBM客户,为他们的J2EE和WebSphere业务集成开发和部署项目提供帮助。他在IBM工作期间,拥有许多技术职位,这使他可以充分了解大量的IBM产品组合和计算平台。他定期在全世界的IT大会上发表演讲,并且是IBM和许多外部技术出版物的作者。
译者序
序言
作者简介
致谢
前言
第1章业务集成
11业务集成所面对的挑战
12面向服务的架构
13SOA的生命周期
14业务集成编程模型
15BPEL(现在称为WSBPEL)
16服务数据对象
17小结
18developerWorks的相关链接
第2章业务集成架构和模式
21业务集成方案
22业务集成:角色、产品和技术挑战
221清晰的角色分离
222通用的业务对象模型
223服务构件架构(SCA)编程模型
224工具和产品
23业务对象框架
24服务构件架构
241SCA编程模型:基本原理
242调用SCA构件
243导入
244导出
245独立引用
25业务集成模式
26业务流程
27限定符
28小结
29developerWorks的相关链接
第3章业务编排
31业务流程
32BPEL
321伙伴链接
322变量
323活动
324表达式语言
325相关集
326作用域
327错误处理器
328补偿处理器
329事件处理器
33BPEL扩展
34短时间运行和长时间运行的流程
341流程的事务特征
342BPEL流程的版本化
35BPEL和SCA
36小结
37developerWorks的相关链接
第4章WebSphere IntegrationDeveloper
41安装WID
42使用WID
43业务集成解决方案的构建块
431模块
432中介模块
433库
44创建项目以及其他内容
441创建库
442创建简单的业务对象
443创建嵌套的业务对象
444创建接口
445创建模块
45流程编辑器
46组装编辑器
47Visual Snippet Editor
48导出模块
481将模块导出为EAR文件
482将模块导出为serviceDeploy文件
483将模块导出为项目交换文件
49测试模块和构件
491模块和构件测试
492测试服务器
493集成测试客户端
410日志和查错
411Eclipse外壳共享
412小结
413developerWorks的相关链接
第5章WebSphere ProcessServer
51WebSphere Process Server简介
511WPS的功能内容介绍
512WPS基础设施
513Business Process Choreographer…
52术语和拓扑
521配置文件
522单元和节点
53安装WPS
531WPS管理
532启动和停止WPS
533创建WPS单元中的关键步骤
54WPS集群拓扑
541集群
542WPS构件集群
543SI总线集群
55拓扑选择
551单服务器拓扑
552单集群拓扑
553带有目标分区的单集群拓扑
554多集群拓扑
56小结
57developerWorks的相关链接
第6章业务流程
61应用示例
62使用短时间运行的业务流程
621创建短时间运行的流程
622添加引用伙伴
623调用伙伴的操作
624使用Assign活动
625使用Choice活动
626为Choice分支使用Visual
Snippet Editor
627定义错误
63使用长时间运行的业务流程
631创建长时间运行的流程
632Empty Action
633使用人工任务
634使用While Loop
64高级的BPEL特性
641添加作用域
642错误处理器
643Receive Choice
644相关集
645事件
65小结
66developerWorks的相关链接
第7章业务映射和业务规则
71支持服务
711映射
712关系
713选择器
714中介流程
72映射
721数据映射
722接口映射
723关系
73映射场景
74实现映射
741创建数据映射
742创建接口映射
75关系
76关系场景
761关系编辑器
762Relationship Manager
77业务规则
771决策表
772规则集
78决策表场景
781创建规则组
782管理业务规则
783导出规则
79选择器
710中介
711小结
712developerWorks的相关链接
第8章业务状态机、人工任务和Web Service
81业务状态机
82Order流程的状态转换图
83实现Order业务状态机
831Order业务状态机接口
832创建Order BSM
833完成组装图
834部署并运行BSM
84人工任务
841共享人工任务
842原始人工任务
843纯人工任务
844管理性人工任务
845即席任务
85用户界面
86Web Service
87在WID中使用Web Service
871导入WSDL文件
872测试和使用WSDL文件
873导入内联WSDL文件
874发布WSDL文件
88小结
89developerWorks的相关链接
第9章业务集成客户端
91Business Process Choreographer(BPC)
92Business Process ChoreographerExplorer
93使用BPC Explorer
931启动流程实例
932认领和处理任务
933查看业务流程
94观察与监控
95Common Event Infrastructure(CEI)
951Common Base Event(CBE)
952在WebSphere中启用CEI
953CEI监控
96Business Process Choreographer EventCollector
97Business Process Choreographer Observer(BPCO)
971安装BPCO
972为BPCO启用日志
98使用Observer
99小结
910developerWorks的相关链接
第10章业务集成服务管理
101安全性
1011WebSphere安全性
1012启用WebSphere GlobalSecurity
1013在WebSphere中启用GlobalSecurity的步骤
1014使用LDAP服务器配置安全性
1015为BPC应用映射安全性角色
1016使WPS安全地访问数据库和消息
102日志与跟踪
1021跟踪用户应用
1022安装日志文件
103Message Logger
1031Message Logger的使用
1032在WID中版本化流程的步骤
1033关于版本化BPEL流程的建议
104小结
105developerWorks的相关链接
第11章业务集成编程
111SCA编程模型
1111以编程方式使用SCA:Java引用
1112以编程方式使用SCA:WSDL引用
1113以声明方式使用SCA:限定符
112WPS中的事件排序
113业务图和业务对象的编程操作
114API或SPI
1141Business Flow Manager API
1142用于启动业务流程的API
1143打包客户端应用
1144Human Task Manager API
115可视化编程
1151安装
1152创建自定义的可视化代码段
116小结
117developerWorks的相关链接
第12章WebSphere适配器
121适配器
122适配器架构
1221公共客户端接口
1222服务提供者接口
1223出站处理
1224入站处理
1225企业发现
1226资源适配器存档文件
123使用适配器
1231创建JDBC出站适配器构件…
1232测试适配器
124FTP、平面文件和Email
适配器
125SAP适配器
126Siebel适配器
127自定义的适配器
128小结
129developerWorks的相关链接
第13章业务建模
131安装WebSphere BusinessModeler
132业务建模的术语和概念
133使用WebSphere BusinessModeler
134业务流程图
135业务度量
136使用业务模型
1361业务项
1362导入业务项
1363业务流程模型
1364导出业务项
1365业务度量
1366业务模拟
137小结
138developerWorks的相关链接
第14章业务监控
141业务活动监控
142安装WebSphere BusinessMonitor
143安装WebSphere Business MonitorDevelopment Toolkit
144使用WebSphere BusinessMonitor
145KPI
146仪表板
147监控器模型
148使用MME
1481场景
1482启用CEI日志
1483生成监控器模型
1484创建触发器
1485创建计数器
1486创建指标
1487创建维数和度量
1488创建KPI
1489部署和测试监控器模型
149小结
1410developerWorks的相关链接
第15章企业服务总线和服务注册表
151WebSphere Service Registry andRepository(WSRR)
152安装WSRR
153使用WSRR
1531加载文档
1532使文档可管控
1533管控对象状态的转换
1534查找文档
154WSRR和WID
155企业服务总线(ESB)
156WebSphere Enterprise ServiceBus
157WESB术语
1571中介
1572中介模块
1573中介流程构件
1574中介流程
1575中介原语
158安装WESB
159使用WESB
1510WESB和WID
15101创建中介模块
15102部署中介模块
15103检查总线
1511小结
1512developerWorks的相关链接
附录AWebSphere Process Server安装
附录BWebSphere IntegrationDeveloper安装
附录CWebSphere Business Modeler安装
附录DWebSphere Business Monitor安装
附录EWebSphere Service Registryand Repository安装
附录FWebSphere Adapter Toolkit安装
〖=A(〗112456778991010101111111314151616161618181919202020212122232424242424252526272828282929293030313131313235353638404346464747484848515152525253535456575858596060616162626364666666666870707171737374747576777778787879808282838485878989909090909091919191929395959799100101102103104104104105108110110111112112113113113115115115119120121121121121122122122124126126128129130131131132132132134135136137139139139140141142142143144144145146147147147148149150152154155157157158158159160161161162162162165168169171177177178180180181181181185185186186188189189189189190190191192196197197198199200201202202203204207207208208209210212214214216216217217219219221222222223224225225226228228229231231232234234235236237238239240241241243245246247247247248249249250251252252253254254255256265270275283288〖=〗