第1章 BizTalk与应用集成 1
1.1 企业应用集成的益处 1
1.2 EAI的挑战 2
1.2.1 简单的客户机-服务器模型 2
1.2.2 分布式业务系统 3
1.2.3 综述EAI所带来的挑战 4
1.3 EAI和B2B的场景和体系结构 5
1.3.1 业务进程集成 5
1.3.2 业务伙伴集成 6
1.3.3 自动化的采购 7
1.3.4 企业对企业(B2B)的集合体 8
1.4 首创BizTalk Framework 9
1.4.1 BizTalkFramework 10
1.4.2 BizTalk.org 11
1.4.3 BizTalk Server。 14
1.5 MicrosoftBizTalk Server 2000介绍 14
1.5.1 BizTalk Server的特性 14
1.5.2 对BizTalk Server工具的总体认识 15
1.6 BizTalk消息传递服务 15
1.6.1 组织 15
1.6.3 封包 16
1.6.4 端口和分配表 16
1.6.2 文档定义 16
1.6.5 信道 17
1.6.6 事务 17
1.6.7 消息传输 18
1.6.8 消息排队 21
1.7 BizTalk Server工具介绍 22
1.7.1 定义业务工作流:OrchestrationDesigner 22
1.7.2 定义消息规范:BizTalk Editor 24
1.7.3 消息规范间的转换:BizTalk Mapper 27
1.7.4 消息传递服务的配置:BizTalk Messaging Manager 28
1.7.5 查看运行时消息:文档跟踪 29
1.7.6 BizTalk Server的管理: ServerAdminlstration 32
1.8 小结 33
第2章 应用程序和调度 35
2.1 编排的必要性 36
2.2 编排的实现 37
2.2.1 业务进程图 38
2.2.2 XLANG调度 39
2.3 BizTalkOrchestrationDesigner 39
2.3.1 Orchestration Designer用户界面 40
2.3.2 调度的设计 43
2.3.3 消息实现的绑定 55
2.3.4 动作与BizTalk或MSMQ实现的连接 65
2.3.5 动作与COM和脚本实现的连接 68
2.4 Wrox Site Manager应用程序 69
2.5 小结 79
第3章 规范 81
3.1 什么是规范 82
3.2 消息格式 83
3.2.1 XML文件 83
3.2.2 定界平面文件 85
3.2.3 定位平面文件 86
3.3 将模式扩展为规范 87
3.3.1 基于XML的消息的规范 87
3.3.2 用于平面文件格式的消息规范 88
3.4.2 构建分层形式 90
3.4 设计规范 90
3.4.1 改编遗留格式 90
3.4.3 BizTalk Framework的规范形式 93
3.5 BizTalk Editor 97
3.5.1 用户界面 97
3.5.2 要点概括 97
3.5.3 使用规范 98
3.5.4 用于Wrox Site Managers范例的规范 108
3.5.5 Site ServiceDescription:一个规范示例 108
3.5.6 定位和定界规范 112
3.5.7 高级特性 116
3.5.8 Cablelnstallation:定界文件规范 118
3.5.9 Yard Work:定位文件规范 119
3.5.10 EDI规范 122
3.6 小结 123
第4章 映射BizTalk消息 124
4.1 BizTalk需要映射的原因 124
4.2 运行时消息的转换 126
4.2.1 映射过程 126
4.2.2 XSLT 128
8.4.1 使用BizTalk Messaging提取内部的Instruction,并传输到Instruction业务进程 129
4.2.3 分析器和串行化器 133
4.3 BizTalk Mapper 135
4.3.1 用户界面 135
4.3.2 构造映射 137
4.3.3 functoid 139
4.3.4 编译和测试映射 148
4.4 对Wrox Site Managers进行映射 150
4.4.1 Site Service Description向CableInstallation的映射 150
4.4.2 SiteDescription向Yard Care的映射 153
4.5 开发自己的functoid 154
4.5.1 functoid的工作原理 154
4.5.2 IFunctoid接口 156
4.5.3 将有线业务规则实现为functoid 160
4.6 小结 167
第5章 BizTalK肖息传递的管理 168
5.1 配置而不是编程 168
5.2 BizTalk消息传递和传输协议 169
5.2.1 与BizTalk直接通信 169
5.2.2 一般协议通信 170
5.3 BizTalk的管理概念 171
5.3.1 组织 172
5.3.2 文档定义 173
5.3.3 封包 173
5.3.4 消息传递端口 174
5.3.5 分配表 174
5.3.6 信道 175
5.4.2 配置服务器选项 176
5.4.1 用户界面 176
5.4 BizTalk Messaging Manager 176
5.4.3 进行搜索 177
5.4.4 配置组织 178
5.4.5 配置文档定义 181
5.4.6 封包配置 184
5.4.7 消息传递端口向导 185
5.4.8 分配表 190
5.4.9 信道向导 191
5.5 简单的BizTalk编程 197
5.5.1 IInterchange接口 198
5.5.2 信道测试器实用程序 201
5.6.1 组织 208
5.6 配置Wrox Site ManagementApplication 208
5.6.3 消息传递端口 209
5.6.2 文档和封包 209
5.6.4 信道 211
5.6.5 测试信道 212
5.7 Wrox Site Management Client 213
5.7.1 用户界面 213
5.7.2 生成XML 214
5.7.3 工程相关性 214
5.7.4 窗体处理 215
5.7.5 提交消息 216
5.7.6 监视调度执行 218
5.8 小结 219
第6章 高级编排 221
6.1 体系结构:调度与应用程序的比较 221
6.2 载入调度 222
6.2.1 消息抵达时载入调度 222
6.2.2 别名语法 222
6.2.3 以编程方式载入 225
6.3 调度的水合 235
6.3.1 工作原理 236
6.3.2 消息延迟和水合 238
6.3.3 为长事务配置数据库 238
6.4 事务和错误恢复 240
6.4.1 参加COM十事务 240
6.4.2 短期事务 241
6.4.3 长期事务 247
6.4.4 嵌套事务 248
6.4.5 计时事务 252
6.5 并发 252
6.5.1 并发和事务边界 253
6.5.2 伸缩性问题 253
6.6 动态端口绑定 254
6.7 小结 259
第7章 消息传递与应用程序的连接 261
7.1 与BizTalk Server的应用集成 262
7.1.1 消息到应用的集成 262
7.1.2 业务进程到应用的集成 263
7.1.3 案例研究:Bob’s Bolts--将消息直接传递到Microsoft Access 263
7.2 使用IBTSAppIntegrationAIC 267
7.2.1 创建IBTSAppIntegrationAIC 267
7.2.2 部署IBTSAppIntegrationAIC 274
7.3 使用IPipelineComponentAIC 280
7.3.1 建立IPipelineComponentAIC 283
7.3.2 部署IPipelineComponentAIC 289
7.3.3 配置IPipelineComponentAIC 290
7.4 使用BizTalk ScriptorAIC 292
7.5 使用AIC的注意事项 297
7.6 小结 297
第8章 消息传递与调度的连接 299
8.1 从消息传递中激活一个新的编排 300
8.1.1 为例子创建一个编排调度 301
8.1.2 为例子配置BizTalk Messaging 304
8.1.3 运行实例 307
8.1.4 工作原理 307
8.2 与现有的编排相关 309
8.3 在两台BizTalk服务器之间基于HTTP的相关 311
8.3.1 提取内部的Instruction消息,并传送到新的Instruction业务进程上 313
8.3.2 在BizTalk orchestration中接收内部消息Instruction,发送Instruction并接收Acknowledgement 314
8.3.3 通过HTTP使用BizTalkMessaging把Instruction发送给新的BizTalk Orchestration 318
8.3.4 在BizTalk Orchestration中接收Instruction,发送Acknowledgement 320
8.3.5 把Acknowledgement消息返回给Instruction调度最初的实例(Acknowledge ment端) 322
8.3.6 招Acknowledgement消息返回给Instryction调度最初的实例(Instruction端) 323
8.3.7 运行例子 325
8.4 两个BizTalkServer之间的基于非HTTP的相关 327
8.4.2 把内部的Instruction接收到BizTalkOrchestration中,发送内部的Instruction,接收Acknowledgement 330
8.4.3 通过非HTTP使用BizTalk Messaging把Instruction发送给新的BizTalk Orchestration 332
8.4.4 在BizTalkOrchestration中接收Instruction消息,发送Acknowledgement消息 335
8.4.5 把acknowledgement消息返回给Instruction调度的原实例(acknowled gement端) 337
8.4.6 把Acknowledgement消息返回给Instruction调度的原实例(Instruction端) 338
8.4.7 运行例子 339
8.5 在BizTalk Server和外部进程之间基于HTTP的XLANG相关 341
8.6 相关的其他方法 345
8.7 小结 345
第9章 维护 347
9.1 维护和管理 347
9.2 BizTalk组、服务器和共享数据 348
9.2.2 BizTalk Server组 349
9.2.1 BizTalk Server 349
9.2.3 BizTalk数据库 351
9.2.4 队列 352
9.3 BizTalk S2erverAdministration用户界面 353
9.3.1 显示共享队列的特性 354
9.3.2 显示接收函数的特性 355
9.3.3 显示服务器的特性 355
9.4 接收函数 356
9.4.1 配置接收函数 357
9.4.2 使用接收函数 361
9.5 一般维护任务 366
9.5.2 设置企业特性 367
9.5.1 权限和远程维护 367
9.5.3 设置组的特性 368
9.5.4 添加一个服务器组 370
9.5.5 为BizTalk服务器组添加一个服务器 371
9.5.6 删除和移动服务器 371
9.5.7 启动和停止服务器 371
9.5.8 释放交换消息 372
9.5.9 设置服务器的特性 372
9.5.10 在队列间移动文档 373
9.6 通过维护界面跟踪错误 374
9.6.1 检查组和服务器状态 374
9.5.11 导出维护信息 374
9.6.2 查看Suspended文档的错误信息 375
9.6.3 事件日志中可用的信息 376
9.7 BizTalk的安全性 376
9.7.1 用户角色 377
9.7.2 保护编排 379
9.8 伸缩性的设计 380
9.8.1 部署数据库 380
9.8.2 部署服务和组件 382
9.9 小结 384
第10章 路由和确认回执 386
10.1 基本路由要求 387
10.2 基于调用的路由 388
10.3 信道规范 390
10.4 自我路由 390
10.4.1 自我路由的文档规范 391
10.4.2 自我路由的一个例子 392
10.4.3 使用开放的端口 394
10.5 非自我路由的接收函数 395
10.6 路由和BizTalk Framework 396
10.6.1 BizTalk Framework 2.0 396
10.6.2 Framework中的路由 401
10.6.3 回执 406
10.7 确认回执 407
10.8 配置BizTalk Server处理回执 408
10.8.1 使用可靠的消息传递来处理回执 408
10.8.2 处理跟踪和回执 416
10.9 定制组件 418
10.9.1 建立定制分析器和串行化器的原因 418
10.9.2 定制分析器 418
10.9.3 IBizTalkParserComponent接口 419
10.9.4 定制串行化器 419
10.9.5 IBizTalkSerializerComponent接口 420
10.9.6 定制相关器 420
10.9.7 IBizTalkCorrelation接口 420
10.9.8 IBizTalkAcknowledge接口 421
10.10 一个BizTalk Framework路由和回执示例 424
10.10.1 场景示例 425
10.10.2 客户应用程序的用户界面:BTFClient.exe 426
10.10.3 窗体加载事件 427
10.10.4 设置端点 428
10.10.5 设置特性 429
lo.10.6 置换消息的主体 434
10.10.7 通过HTTP传送文档 435
10.10.8 HTTP接收函数 436
10.10.9 查看回执 438
10.10.10 测试样例和BizTalk Framework路由 439
10.11 小结 442
第11章 文档跟踪 444
11.1 捕获跟踪信息 444
11.2 显示跟踪信息 455
11.2.1 查看交换的元数据 456
11.2.2 查看文档专用的数据 457
11.2.3 跟踪界面解密 459
11.3 编程访问跟踪信息 460
11.4 在数据库的级别上理解文档跟踪 471
11.5 预备处理器和文档跟踪 475
11.6 管理跟踪数据库 475
11.8 小结 476
11.7 配置BizTalk Orchestration跟踪 476
第12章 配置编程 477
12.1 配置编程的使用 477
12.1.1 配置导出 478
12.1.2 动态配置 478
12.2 BizTalk配置对象模型 479
12.2.1 了解配置对象模型 480
12.2.2 处理配置对象时维护引用的完整性 483
12.2.3 IBizTalkBase接口 484
12.2.4 IBizTalkConfig接口 485
12.2.5 IBizTalkOrganization接口 488
12.2.6 IBizTalkDocument接口 490
12.2.7 IBizTalkPort接口 491
12.2.8 IBizTalkChannel接口 493
12.2.9 IBizTalkEndPoint接口 496
12.2.10 IBizTalkEovelope接口 497
12.2.11 IBizTalkPortGroup接口 498
12.2.12 IBizTalkWindowsInfo接口 499
12.2.13 IBizTalkTransportInfo接口 499
12.2.14 IBizTalkCertificateInfo接口 501
12.2.15 IBizTalkLoggingInfo接口 501
12.2.16 IDictionary接口 502
12.2.17 ISimpleList接口 503
12.3.1 用户界面 504
12.3 协调URL示例 504
12.3.2 建立工程 505
12.3.3 枚举信道 506
12.3.4 访问端口信息 507
12.3.5 传输消息 507
12.4 小结 509
附录A 设置和安装 511
A.1 系统需求 511
A.1.1 推荐的最低硬件配置 511
A.1.2 性能的硬件要求 511
A.1.3 依赖的软件 512
A.2 手工安装与设置 513
A.3 安装到一个服务器组上:静默安装 515
附录B XSLT和XPath 518
B.1 什么是XSLT 518
B.2 转换过程 519
B.3 XSLT用作编程语言 521
B.3.1 XML的语法 521
B.3.2 基于规则 521
B.3.3 XPath查询 522
B.3.4 功能化编程 523
B.3.5 数据类型 523
B.4 XPath数据模型 525
B.5 XPath表达式 529
B.5.1 上下文 529
B.5.2 初等量 529
B.5.3 运算符 530
B.5.4 比较节点集 531
B.5.5 位置路径 531
B.5.6 XPath函数 535
B.6 样式表、模板和模式 543
B.6.1 <xsl:stylesheet=元素 543
B.6.2 <xsl:template>元素 544
B.6.3 模式 546
B.6.4 选择一个模板规则 547
B.6.5 参数 548
B.7 模板的内容 549
B.7.1 属性值模板 549
B.7.2 XSLT指令 550
B.7.3 字面量结果元素 557
B.7.4 排序 558
B.8 顶级元素 558
B.8.1 <xsl:attribute-set> 559
B.8.2 <xsl:decimal-format> 559
B.8.3 <xsl:import> 559
B.8.5 <xsl:kev> 560
B.8.4 <xsl:include> 560
B.8.7 <xsl:output> 561
B.8.6 <xsl:namespace-alias> 561
B.8.8 <xsl:param> 562
B.8.9 <xsl:preserve-space>和<xsl:strip-space> 562
B.8.10 <xsl:template> 563
B.8.11 <xsl:variable> 563
B.9 一些实际例子 563
B.10 小结 571
C.1 BizTalk封包结构 572
C.1.1 目的和起源 572
附录C BizTalk Framework 2.O消息 572
C.1.2 结构 573
C.2 Header 573
C.3 endpoints 574
C.4 properties 574
C.5 Services 575
C.6 manifest 576
C.7 process 578
C.8 一个BizTalkFramework消息的例子 579
C.9 回执文档 581
C.9.1 提交回执 581
C.9.2 承诺回执 582