当前位置:首页 > 工业技术
SOA思想、技术与系统集成应用详解
SOA思想、技术与系统集成应用详解

SOA思想、技术与系统集成应用详解PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:梁爱虎编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2007
  • ISBN:9787121052996
  • 页数:532 页
图书介绍:信息集成是全球经济一体化的关键,本书阐明了SOA的本质需求和未来软件的发展方向——应用服务的集成,详细介绍了目前SOA的各种关键核心技术——JBI、SCA、SDO、Web Service、BPEL等。为了使SOA不仅仅停留在理论阶段上,让SOA技术能够真正实施起来,使得各类企业都能各得所需,本书通过实例详细介绍了如何使用目前的开源的服务总线(ServiceMix、Celtix、Synapse和Mule),以及目前主流的企业级服务总线和流程管理服务器(Bea Aqulogic、Bea Process Server、IBM Webshpere Business Modeler、IBM Websphere Integration Developer和IBM websphere ESB服务总线)。本书介绍了目前流行的各种应用软件包,如ERP、CRM、供应链系统等,其本质都是各种业务模块的集成。最后阐明了如何对这些业务系统实施SOA的集成,这也是这些业务模块的必由之路。
《SOA思想、技术与系统集成应用详解》目录

第1篇 SOA理论思想及核心技术 3

第1章 SOA思想概述 3

1.1 IT的本质及其发展历史 5

1.1.1 IT的本质:创建信息和调用信息 5

1.1.2 IT的进一步:集成信息 5

1.1.3 IT程序语言发展史 6

1.2 SOA的基本思想:面向服务 7

1.3 SOA的基本要素 8

1.3.1 松散耦合 8

1.3.2 粗粒度 9

1.3.3 位置和传输协议透明 9

1.4 SOA的目标:敏捷的、不受限制的集成 11

1.5 SOA与佛家禅宗思想的相通之处:“随需而变”与“无所住” 12

1.6 小结 13

第2章 Web Service编程详解 15

2.1 Web Service的原理及概念 15

2.1.1 命名空间(name space) 15

2.1.2 WSDL的本质:服务内容的标准化描述 17

2.1.3 SOAP的本质:标准的传输协议 22

2.1.4 UDDI的本质:服务的公共网址 24

2.2 Axis的Web Service实现方法 24

2.3 Xfire的Web Service实现方法 28

2.4 构建Eclipse3.1.2+Lomboz+Tomcat5.5.12开发环境 30

2.4.1 下载和安装各种工具和插件 31

2.4.2 设置Eclipse下面的Tomcat的运行环境 33

2.4.3 调出Lomboz菜单 34

2.4.4 创建Lomboz J2EE Project 37

2.4.5 创建Web Module 39

2.4.6 将Tomcat加入Webmodule 40

2.4.7 配置环境变量 41

2.4.8 在Eclispe中加入Axis的开发环境 42

2.4.9 发布Web Module到应用服务器 44

2.4.10 在Eclipse 3.1.2上运行Tomcat 44

2.5 Axis2快速创建Web Service 45

2.6 小结 50

第3章 JBI架构思想详解 53

3.1 JBI的基本思想 53

3.1.1 应用服务器的现状 53

3.1.2 JBI的BC组件(绑定组件Binding Components) 55

3.1.3 JBI的SE组件(服务引擎Service Engines) 56

3.1.4 JBI的NMR(规格化消息路由器Normalized Message Router) 57

3.2 一个JBI的实例 58

3.2.1 实例的流程图 59

3.2.2 实例的服务器端ServiceMix的实现 60

3.2.3 客户端调用程序 64

3.3 JBI的工作原理 66

3.3.1 组件的初始化 67

3.3.2 服务调用模式(Service Invocation Pattern) 71

3.3.3 消息交换模式(Message Exchange Pattern) 72

3.4 MessageExchange消息交换 76

3.5 NormalizedMessage规格化消息 81

3.6 小结 82

第4章 SCA架构思想详解 85

4.1 SCA概述 85

4.1.1 SCA的核心 85

4.1.2 通过实例介绍SCA组件和现有组件的根本区别 87

4.2 服务组件SCA Component 93

4.3 服务模块SCA Composite 97

4.3.1 SCA服务模块的基本原理 97

4.3.2 SCA服务模块的实例 98

4.3.3 连线(Wire)和提升(Promote) 102

4.3.4 绑定(Binding) 104

4.4 服务子系统(SCA Subsystem) 105

4.5 SCA和JBI的根本相同点与不同点 106

4.6 小结 107

第5章 SDO编程思想详解 109

5.1 SDO的架构 109

5.2 通过一个实例描述SDO和现有数据对象的区别 112

5.3 数据图(Data Graph) 116

5.3.1 从XML文件得到Data Graph实例 116

5.3.2 通过SDO的API创建Data Graph实例 119

5.3.3 Data Graph的API介绍 121

5.4 数据对象(Data Object) 121

5.5 修改概要(Change Summary) 125

5.5.1 修改概要(Change Summary)功能详解 126

5.5.2 Change Summary实例 127

5.6 属性(Property) 129

5.6.1 属性(Property)功能介绍 129

5.6.2 属性(Property)实例 131

5.7 类型(Type) 132

5.7.1 类型(Type)功能介绍 133

5.7.2 类型(Type)实例 135

5.8 顺序(Sequence) 137

5.8.1 顺序(Sequence)功能详解 137

5.8.2 顺序(Sequence)实例 139

5.9 小结 143

第6章 BPEL编程思想详解 145

6.1 BPEL的基本思想 145

6.1.1 用Java实例模拟BPEL的创建过程 146

6.1.2 用实例概述BPEL的创建过程 149

6.2 房屋贷款BPEL实例详解 151

6.2.1 房屋贷款案例介绍 152

6.2.2 定义BPEL流程的接口WSDL 153

6.2.3 外部服务合作伙伴的WSDL 155

6.2.4 定义合作伙伴的链接 159

6.2.5 声明变量 160

6.2.6 声明异常处理 160

6.2.7 开发BPEL流程 161

6.3 BPEL过程组件 164

6.3.1 合作伙伴连接(Partner Links) 164

6.3.2 变量Variables 165

6.3.3 相关集(Correlation Sets) 166

6.3.4 错误处理(Fault Handlers) 168

6.3.5 补偿处理(Compensation Handlers) 169

6.4 BPEL活动(Activity) 170

6.4.1 <receive>/<reply>(接收/恢复) 170

6.4.2 <assign>/<invoke>(赋值/调用) 171

6.4.3 <condition>/<otherwise>(条件/否则) 172

6.4.4 <sequence>/<flow>(顺序/并行) 173

6.4.5 <link>/<source>/<target>(链接/源/目标) 173

6.4.6 <pick>/<onMessage>/<onAlarm>(选择/监听/闹钟) 175

6.5 小结 175

第2篇 开源服务总线、JBI、SCA和SDO第7章 基于JBI的ServiceMix服务总线 179

7.1 ServiceMix所支持的主要功能 179

7.2 ServiceMix架构体系 180

7.3 安装ServiceMix3.1 181

7.4 创建和发布Web服务实例 182

7.4.1 业务流程 183

7.4.2 Servicemix.xml 184

7.4.3 创建hello_xfire.wsdl 186

7.4.4 创建Java服务类 188

7.4.5 在ServiceMix上发布和运行Web Servivce 189

7.4.6 创建客户端调用程序 189

7.5 创建SOAP绑定代理服务实例 191

7.5.1 流程图 191

7.5.2 Servicemix.xml 192

7.5.3 发布服务和创建客户端的调用程序 194

7.6 创建HTTP绑定代理服务实例 197

7.6.1 流程图 197

7.6.2 Servicemix.xml 198

7.7 集成并路由到不同的外部服务实例 200

7.7.1 流程图 200

7.7.2 Servicemix.xml 201

7.7.3 服务器端路由(Router)和格式转化(Transformer)程序 203

7.7.4 发布服务和创建客户端调用程序 209

7.8 集成并路由到不同服务的房屋贷款实例 210

7.8.1 流程图 211

7.8.2 服务器端程序 212

7.8.3 配置SU、SA、jbi.xml、servicemix.xml 220

7.8.4 创建和发布实例 225

7.8.5 创建客户端调用程序 225

7.9 创建BPEL房屋贷款实例 227

7.9.1 流程图 228

7.9.2 服务器端程序 229

7.9.3  配置SU、SA、jbi.xml、servicemix.xml、xbean.xml 233

7.9.4 创建和发布实例 238

7.9.5 客户端调用程序 240

7.10 小结 242

第8章 CXF(Celtix/Xfire)服务总线 243

8.1 CXF架构体系和主要功能 243

8.2 Hello World(发布服务的功能)实例 246

8.2.1 Hello_world.wsdl 246

8.2.2 服务实现类GreeterImpl.java 248

8.2.3 服务发布类Server.java 249

8.2.4 发布和运行服务 250

8.2.5 客户端调用 251

8.3 房屋贷款实例 256

8.3.1 Loanbroker.wsdl 257

8.3.2 房屋贷款的业务Java实现类 259

8.3.3 服务发布类Server.java 263

8.3.4 发布和运行服务 263

8.3.5 客户端调用 265

8.4 集成ServiceMix 267

8.4.1 基于JMS传输协议的Loanbroker.wsdl 267

8.4.2 CFX的Java实现类 270

8.4.3 服务发布类Server.java 271

8.4.4 创建运行于CXF和ServiceMix集成的配置文件 272

8.4.5 发布和运行服务 275

8.4.6 客户端调用 276

8.5 小结 277

第9章 Apache Synapse服务总线 279

9.1 Synapse的架构体系和主要功能 279

9.2 Synapse代理外部服务 281

9.3 Synapse修改请求消息 284

9.4 Synapse修改返回消息 286

9.5 Synapse根据消息内容路由到不同的外部服务 288

9.6 Synapse服务总线集成房屋贷款实例 291

9.6.1 创建基于Axis2的房屋贷款Java实现类 292

9.6.2 创建基于Axis2的Web Service的配置文件 294

9.6.3 创建Synapse服务总线的集成路由配置文件 296

9.6.4 创建客户端调用程序 298

9.7 小结 300

第10章 Mule服务总线 301

10.1 Mule架构体系和主要功能 302

10.2 创建Hello服务 304

10.2.1 创建UMO的Java接口和Java实现类 305

10.2.2 创建Mule配置文件hello-config.xml 306

10.2.3 安装和运行实例 308

10.3 通过Mule创建房屋贷款服务总线实例 309

10.3.1 装载Mule配置文件和发送服务请求程序 310

10.3.2 接收服务请求的程序 316

10.3.3 查询客户房屋数量的EJB组件 324

10.3.4 银行代理服务类和银行类 328

10.3.5 路由(Router)的实现类 333

10.3.6 格式转换器(Transformer) 336

10.3.7 通过Mule集成所有业务模块 338

10.3.8 发布和运行 346

10.4 小结 348

第11章 Apache Tuscany的Java SCA 349

11.1 Java SCA Tuscany架构体系和主要功能 349

11.2 基于SCA实现集成房屋贷款实例 350

11.2.1 创建基于SCA的房屋贷款Java类 352

11.2.2 创建基于SCA的房屋贷款配置文件 356

11.2.3 创建基于SCA的客户端调用程序 358

11.3 SCA的Web Service绑定实现和引用 359

11.3.1 创建房屋贷款的Web Service实现模块 359

11.3.2 创建房屋贷款的Web Service引用模块 367

11.4 实现SCA的RMI绑定开发和调用 370

11.4.1 创建房屋贷款的RMI实现模块 370

11.4.2 创建房屋贷款的RMI引用模块 375

11.5 小结 381

第12章 Apache Tuscany的Java SDO 383

12.1 Tuscany SDO架构体系和主要功能 383

12.2 将XML转换为Data Object 384

12.2.1 通过XML String创建Data Object 384

12.2.2 将XML文件和XSD文件转换为Data Object 385

12.3 读取Data Object 388

12.3.1 基于getList方法来读取Data Object 388

12.3.2 基于Xpath方法来读取Data Object 390

12.4 基于XSD创建Data Object 391

12.5 增加新的Data Object节点 392

12.6 修改Data Object节点内容 394

12.7 删除Data Object节点 395

12.8 小结 396

第3篇 企业级服务总线、SCA、SDO、BPEL第13章 BEA Aqulogic服务总线 399

13.1 BEA Aqulogic服务总线的架构体系 399

13.2 通过BEA Aqulogic实现房屋贷款实例 400

13.2.1 安装和运行BEA Aqulogic服务总线 402

13.2.2 创建项目和装载所要集成的WSDL文件 403

13.2.3 创建入站代理服务 406

13.2.4 创建出站业务服务 410

13.2.5 配置入站服务HouseLoanGateway的路由 413

13.2.6 配置入站服务BankGateway的路由 416

13.2.7 创建客户端的调用程序 421

13.3 小结 424

第14章 基于IBM WebSphere Integration Developer(WID)的SCA开发详解 425

14.1 IBM WebSphere WID产品的架构体系和主要功能 425

14.2 Hello模块的SCA开发 427

14.2.1 创建集成模块HelloIntegration 428

14.2.2 创建模块接口 429

14.2.3 实现Hello模块 430

14.2.4 输出Hello组件 433

14.2.5 将WebSphere Process Server集成到WID的运行环境中 434

14.2.6 发布和测试Hello组件 435

14.3 房屋贷款实例的SCA开发 437

14.3.1 创建HouseLoanLib库 438

14.3.2 创建、实现和输出业务模块HouseLoanAgency 442

14.3.3 通过SDO实现业务模块Bank0 445

14.3.4 创建、实现和输出业务模块Bank1、Bank2、Bank3 447

14.3.5 创建、实现和输出业务模块HouseLoanBroker 448

14.3.6 测试房屋贷款实例 452

14.4 小结 453

第15章 基于IBM WID和WebSphere ESB Server的ESB开发详解 455

15.1 IBM WebSphere ESB Server服务总线 455

15.2 Hello的ESB实例 457

15.2.1 创建Hello的Mediation Module 457

15.2.2 在Mediation Module项目中集成外部的Web Service 458

15.2.3 实现中介流组件 461

15.2.4 将WebSphere ESB Server加入到WID的运行环境 463

15.2.5 测试Hello中介流模块 464

15.3 通过SDO和中介流组件处理消息转换 465

15.4 通过Message Filter实现动态路由 468

15.4.1 创建中介流模块 468

15.4.2 通过Message Filter消息过滤器实现动态路由 470

15.4.3 测试动态路由 476

15.5 通过中介流组件和动态路由 实现房屋贷款实例 477

15.5.1 创建HouseLoanLib库 479

15.5.2 创建HouseLoanMediation中介流模块 480

15.5.3 创建BankMediation中介流模块 481

15.5.4 创建HouseLoanBroker集成模块 483

15.6 小结 484

第16章 基于IBM WID和WebSphere Process Server的BPEL开发详解 485

16.1 IBM WebSphere Process Server业务流程管理器 485

16.2 WID BPEL实现房屋贷款的实例 486

16.3 创建房屋贷款的共享库HouseLoanLib 487

16.4 创建房屋贷款的BPEL业务流程模块 489

16.4.1 创建BPEL业务流程模块 489

16.4.2 创建BPEL业务流程组件 490

16.5 通过WID创建房屋贷款的BPEL业务流程 492

16.5.1 定义合作伙伴<partnerLink> 495

16.5.2 定义输入和输出变量Variable 497

16.5.3 调用<invoke>引用合作伙伴的服务 500

16.6 创建集成模块运行房屋贷款的BPEL业务流程 509

16.7 小结 513

第4篇 实施篇 517

第17章 SOA项目集成解决方案 517

17.1 SOA项目集成解决方案的基本思想 517

17.2 ERP系统SOA解决方案 518

17.2.1 ERP系统简介及其现状 519

17.2.2 ERP的核心驱动BOM的SOA集成解决方案 519

17.3 CRM与ERP集成的SOA解决方案 521

17.4 供应链系统的SOA解决方案 523

17.5 零售业服务系统的SOA解决方案 525

17.6 银行信贷服务的SOA解决方案 530

17.7 小结 532

后记 533

相关图书
作者其它书籍
返回顶部