《WebSphere环境下的Web服务开发技术》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)Ueli Wahli等著;瞿裕忠等编译
  • 出 版 社:世界图书出版公司北京公司
  • 出版年份:2002
  • ISBN:7506245914
  • 页数:426 页
图书介绍:本书介绍了J2EE应用和Web服务的一种新的应用开发工具WSAD的基本工具和小组开发环境,以及Web应用、XML、数据、EJB和Web服务的开发和部署。

第一部分 引言 1

第1章 应用示例—汽车配件 1

1.1 应用的使用案例 1

1.1.1 本地经销商查询 2

1.1.2 对汽车制造商的系统进行查询 2

1.1.3 对其它的配件制造商进行动态的查询 2

1.1.4 经销商横向查询的实现 3

1.2 系统设计 3

1.2.1 第一阶段:本地经销商查询 4

1.2.2 第二阶段:对汽车制造商的系统进行查询 4

1.2.3 第三阶段:对其它的制造商进行动态的查询 5

1.2.4 第四阶段:经销商横向查询的实现 6

1.2.5 系统框图 7

1.2.6 数据模型 7

1.3 应用使用到的产品 8

1.4 小结 8

测验 8

第二部分 WSAD 10

第2章 WSAD概述 10

2.1 产品 10

2.2 WebSphere Studio工作台 11

2.2.1 Meta Object Framework:MOF 12

2.2.2 Concurrent Version System:CVS 12

2.2.3 ClearCase LT(CCLT) 12

2.3 工作台窗口 12

2.4 透视图 12

2.4.1 视图(View) 13

2.4.2 导航器视图(Navigatorview) 13

2.4.3 编辑器(Editor) 13

2.4.4 轮廓视图(Outline view) 14

2.4.5 特性视图(Properties view) 14

2.4.6 任务视图(Tasks view) 14

2.4.7 定制透视图 15

2.4.8 Web透视图 15

2.4.9 Java透视图 16

2.4.10 J2EE透视图 17

2.4.11 数据透视图 18

2.4.12 XML透视图 18

2.4.13 服务器透视图 19

2.4.14 调试透视图 20

2.4.15 帮助透视图 21

2.5 项目 21

2.5.1 Java项目 22

2.5.2 EAR项目 25

2.5.3 Web项目 26

2.5.4 EJB项目 29

2.5.5 服务器项目 31

2.6 WSAD内部系统文件 35

2.7 总结 36

测验 36

第3章 WSAD的Web应用开发 37

3.1 “汽车配件”应用示例第一阶段的方案纲要 37

3.1.1 类图和顺序图 37

3.2 开发前的准备工作 38

3.2.1 创建一个新的工作空间 39

3.2.2 项目配置 39

3.2.3 考察自动生成的Web项目文件 40

3.2.4 创建ITSOWSAD样本数据库 41

3.2.5 为已生成的servlet创建一个合适的Java包 42

3.3 构建应用 42

3.3.1 生成基本的Web应用程序 42

3.3.2 设计表单并生成选项 47

3.3.3 查看已生成的各类文件 49

3.3.4 部署描述文件web.xml 50

3.3.5 改变背景 51

3.3.6 增加图片显示的支持 52

3.3.7 如果使用4.0.2 之前的版本代码应作必要的修改 55

3.4 部署和测试Web应用 57

3.4.1 创建一个服务器项目 57

3.4.2 创建一个服务器实例和配置 57

3.4.3 将项目与服务器配置关联 58

3.4.4 添加JDBC数据源 59

3.4.5 执行Web应用 61

3.5 总结 63

测验 63

第4章 WSAD中的XML支持 64

4.1 XML基本知识 64

4.1.1 背景 64

4.1.2 XML基本概念 65

4.1.3 XML namespace 68

4.1.4 XML schema 69

4.1.5 处理XML 71

4.1.6 XML解析器 72

4.1.7 XML处理器 73

4.1.8 小结 73

4.2 WSAD中支持XML的工具 73

4.3 示例的解决方案概要 74

4.3.1 类图 75

4.3.2 顺序图 76

4.4 开发的准备 77

4.5 由SQL产生XML文件和XML schema 79

4.6 浏览和编辑XML和XSD文件 80

4.6.1 编辑XML文件 80

4.6.2 编辑XSD文件 81

4.6.3 验证XML文件的有效性 82

4.6.4 编辑XML schema和数据文件 82

4.6.5 修改XML以匹配新的schema 85

4.6.6 直接编辑XML 85

4.6.7 创建XML到XML的映射 86

4.7 处理XML 90

4.7.1 用样式表将XML转换成另一个XM 90

4.7.2 用样式表将XML转换成HTML 92

4.7.3 解析XML文件 93

4.7.4 由Java程序创建XML文件 95

4.8 展望 96

测验 96

第5章 WSAD的EJB开发 97

5.1 汽车配件应用示例第二阶段a部分解决方案概述 97

5.1.1 类图 98

5.1.2 顺序图 100

5.2 应用开发的准备工作 100

5.2.1 项目配置 100

5.2.2 EJB映射方法回顾 101

5.3 构建实体EJBs 101

5.3.1 创建实体EJBs 102

5.3.2 查看生成的文件 104

5.3.3 EJB类的回顾 107

5.3.4 产生的EJB元数据 107

5.3.5 生成映射 107

5.3.6 添加对主键域的getter方法 109

5.3.7 定义getter方法为只读属性 110

5.3.8 将EJBs绑定到JDBC数据源 111

5.3.9 验证项目的有效性 112

5.3.10 生成部署代码 112

5.4 测试实体EJBs 113

5.4.1 将EAR项目与服务器配置相关联 113

5.4.2 执行EJB客户端测试参考程序 114

5.5 开发前端会话EJB 118

5.5.1 创建会话EJB 118

5.5.2 完成前端会话EJB 119

5.5.3 提升新的方法至EJB远程接口 123

5.5.4 定义EJB引用 123

5.5.5 验证项目有效性 125

5.5.6 生成部署代码 125

5.6 测试会话EJB 125

5.7 总结 126

测验 126

第6章 WebSphere环境下Web和EJB应用的部署 128

6.1 WebSphere AEs和AE的区别 128

6.2 部署到WebSphere AEs 128

6.2.1 导出EAR文件 129

6.2.2 启动AEs服务器 129

6.2.3 启动管理控制台 131

6.2.4 创建JDBC驱动器和数据源 131

6.2.5 安装Almaden Autos企业应用 133

6.2.6 安装Mighty Motors企业应用 134

6.2.7 保存配置 136

6.2.8 停止AEs服务器 137

6.2.9 使用SEAppInstall工具部署企业应用 137

6.2.10 部署EJB测试客户机 137

6.2.11 验证企业应用 139

6.2.12 重新生成plug-in 140

6.3 在AEs中测试部署的应用 141

6.3.1 使用内嵌HTTP服务器测试 142

6.3.2 使用IBM HTTP服务器(AEs)测试 142

6.4 部署到WebSphere AE 142

6.4.1 启动管理服务器 142

6.4.2 启动管理控制台 142

6.4.3 创建JDBC驱动器和数据源 143

6.4.4 创建应用服务器 144

6.4.5 安装Almaden Autos企业应用 145

6.4.6 安装Mighty Motors企业应用 147

6.4.7 启动WebSphere AE应用服务器 149

6.5 在WebSphere AE上测试部署的应用 149

6.5.1 使用内嵌HTTP服务器测试 150

6.5.2 使用IBM HTTP服务器(AE)测试 151

6.6 使用WSAD进行远程单元测试 151

6.7 总结 155

测验 155

第7章 小组开发 156

7.1 小组开发概述 156

7.1.1 可扩展的体系结构 156

7.1.2 CVS与ClearCase之间的区别 157

7.2 工作空间 158

7.2.1 本地历史信息 158

7.2.2 设定多工作空间 158

7.2.3 在服务器上执行WSAD的可执行代码 159

7.3 小组开发术语介绍 159

7.3.1 流 159

7.3.2 最有利的小组模型 160

7.3.3 分支 160

7.3.4 版本 161

7.3.5 术语矩阵 161

7.4 小组开发透视图(Tean) 161

7.4.1 透视图概述 161

7.4.2 连接CVS资源库 162

7.4.3 查看HEAD流中的项目 163

7.4.4 浏览资源的历史信息 163

7.4.5 比较资源库中一个文件的两个版本 164

7.4.6 添加项目至工作空间 165

7.4.7 改变项目类型 166

7.4.8 配置项目 167

7.5 安装本地CVS资源库 167

7.5.1 下载并安装CVS 167

7.5.2 创建新的资源库 167

7.5.3 创建Windows服务 168

7.5.4 创建新用户 168

7.6 模拟小组开发 168

7.6.1 配置 168

7.6.2 顺序开发情景 169

7.6.3 在单个流中并行开发的情景 171

7.6.4 使用多个流分别开发的情景 174

7.7 小组开发的其它话题 176

7.7.1 确定需要管理的文件 177

7.7.2 备份CVS资源库 177

7.7.3 资源库管理 177

7.7.4 实现安全 177

7.7.5 构建脚本 178

7.7.6 管理类路径 178

7.7.7 使用CVS宏 179

7.7.8 监视文件的调整 179

7.7.9 其它CVS命令 179

测验 179

第三部分 Web服务 180

第8章 Web服务体系结构概述 180

8.1 技术动机 180

8.1.1 技术基础 181

8.2 面向服务的体系结构介绍 182

8.2.1 服务的角色 183

8.2.2 SOA栈 183

8.2.3 先看几个示例 185

8.2.4 SOA的实现 187

8.2.5 接下来是什么 188

8.3 开发Web服务 189

8.3.1 开发步骤 189

8.3.2 提供者和请求者的开发策略 190

8.3.3 服务生命周期 191

8.3.4 接下来是什么 193

8.4 SOAP介绍 193

8.4.1 概述 193

8.4.2 SOAP消息的结构 194

8.4.3 URN 195

8.4.4 封装 195

8.4.5 高级概念 197

8.4.6 Apache SOAP实现 199

8.4.7 SOAP小结 202

8.5 WSDL入门 204

8.5.1 概述 204

8.5.2 WSDL文档的结构 205

8.5.3 服务实现文档 208

8.5.4 服务接口文档 209

8.5.5 绑定 210

8.5.6 WSDL的API 213

8.5.7 WSDL小结 214

8.6 UDDI概述 215

8.6.1 UDDI注册系统结构 215

8.6.2 标识(identification)和分类(categorization) 218

8.6.3 UDDI API概述 219

8.6.4 UDDI注册系统的结构 220

8.6.5 已有的注册系统 221

8.6.6 UDDI小结 221

8.7 总结 222

测验 224

第9章 对Web服务的产品支持 225

9.1 WSAD 225

9.1.1 Web服务向导 226

9.1.2 Web服务客户端向导 227

9.1.3 Web服务骨架JavaBean向导 228

9.1.4 Web服务DADX组配置向导 228

9.1.5 UDDI浏览器(入口,出口) 229

9.2 WSTK 229

9.2.1 WSTK,WSAD和其他IBM工具之间的关系 229

9.2.2 WSTK体系结构 229

9.2.3 设计时组件 230

9.2.4 运行时组件 231

9.2.5 其他组件和功能 231

9.3 WSAD 4.0版 231

9.4 DB2 232

9.5 Versata 232

9.5.1 Versata XML和Web服务工具包 232

9.5.2 VLS中作为Web服务的导出规则 233

9.5.3 由业务规则调用Web服务 233

9.6 总结 234

测验 234

第10章 静态Web服务 235

10.1 “汽车配件”应用示例第二阶段b部分的解决方案概要 235

10.1.1 类和顺序图 236

10.2 准备开发 237

10.2.1 创建新项目ITSOMightyWeb 237

10.3 Web服务类型 237

10.4 创建Mighty Motors的Web服务InquireParts 238

10.5 创建JavaBean wrapper 238

10.5.1 为JavaBean创建一个包 238

10.5.2 创建JavaBean 239

10.5.3 实现JavaBean:InquireParts 239

10.5.4 测试JavaBean 243

10.6 创建Web服务 244

10.6.1 使用Web服务向导 246

10.6.2 配置Web服务特性 246

10.6.3 Web服务的作用域 247

10.6.4 使用安全SPOP 248

10.6.5 选择JavaBean方法和编码类型 248

10.6.6 XML/Java之间的映射 249

10.6.7 定义Java至XML的映射 249

10.6.8 代理生成 250

10.6.9 定义XML至Java的映射 251

10.6.10 校验SOAP绑定 252

10.6.11 Web服务测试客户端 252

10.6.12 生成样本客户端 252

10.6.13 发布Web服务 253

10.7 检查生成的文件 253

10.7.1 使用先前创建的XML Schema 254

10.7.2 Web服务的WSDL文件 254

10.7.3 修改服务实现 254

10.7.4 修改服务接口 255

10.7.5 生成SOAP部署描述文件 256

10.7.6 SOAP路由servlet 257

10.7.7 检查部署好的Web服务 258

10.7.8 Web服务客户端代理 259

10.7.9 Web服务样本客户端 261

10.7.10 使用TCP/IP监视服务器观察消息内容 262

10.8 创建Almaden Autos的Web服务客户端 266

10.8.1 拷贝WSDL的服务实现 267

10.8.2 创建Web服务客户端 267

10.8.3 检查生成的客户端文件 268

10.8.4 测试Web服务请求者 268

10.8.5 创建客户端应用程序 269

10.8.6 创建XSL样式表 269

10.8.7 创建新的servlet 271

10.8.8 完成servlet 271

10.8.9 在Web应用程序中添加新的servlet的链接 272

10.8.10 测试Web服务客户端 275

10.8.11 关于加强样本程序功能的考虑 275

10.9 利用会话EJB创建Web服务 275

10.9.1 利用向导创建会话EJB的Web服务 275

10.9.2 测试会话EJB的Web服务 276

10.10 总结 277

测验 278

第11章 动态Web服务 279

11.1 “汽车配件”应用示例第三阶段的解决方案概要 279

11.1.1 类图 281

11.1.2 顺序图 281

11.2 准备开发 282

11.2.1 安装Plenty Parts的Web服务 283

11.2.2 静态Web服务(重温) 283

11.3 使用WSAD中的UDDI浏览器 284

11.3.1 发布UDDI业务实体 285

11.3.2 把服务的WSDL文件导出到UDDI注册系统 288

11.3.3 使用Web浏览器访问测试注册系统 290

11.3.4 从UDDI注册系统中导入服务的WSDL文件 291

11.3.5 撤消和更新UDDI注册系统中的条目 293

11.4 利用WSDL文件生成SOAP客户端代理 293

11.5 使用UDDI API 294

11.5.1 在UDDI注册系统中查找服务提供者 295

11.6 更新Almaden Autos的Web应用程序 300

11.6.1 UDDI查询servlet 300

11.6.2 创建XSL样式表 301

11.6.3 更新原有的Web应用程序 302

11.7 单元测试 303

11.8 在WebSphere4.0中部署增强的应用程序 304

11.9 总结 304

测验 304

第12章 复合Web服务 305

12.1 “汽车配件”应用示例第四阶段的解决方案概要 305

12.1.1 类和交互图 306

12.2 准备开发 307

12.2.1 创建新的经销商 308

12.3 创建Almaden Autos的Web服务 309

12.3.1 创建JavaBean框架 309

12.3.2 检查生成的文件 311

12.3.3 实现JavaBean框架 312

12.3.4 测试Web服务 314

12.4 创建Santa Cruz Sports Cars的Web应用 314

12.4.1 拷贝WSDL文件到ITSOSantaWeb项目中 314

12.4.2 启动服务器 315

12.4.3 创建Web服务的客户端 315

12.4.4 测试代理 315

12.4.5 添加XSL样式表 315

12.4.6 创建调用Web服务的servlet 316

12.4.7 在Web应用程序中添加servlet的链接 317

12.5 测试Santa Cruz Sports Cars的Web应用 317

12.6 总结 318

测验 318

第13章 WebSphere环境下Web服务的部署 320

13.1 部署前的准备 320

13.2 有关URL的注意事项 320

13.3 导出企业应用 321

13.3.1 导出EAR文件 321

13.3.2 添加SOAP管理客户端 321

13.4 部署到WebSphere AEs 323

13.4.1 卸载以前的企业应用通过命令除去 323

13.4.2 安装企业应用 324

13.4.3 为AEs定义8080端口 324

13.4.4 重新生成plug-in并保存配置 325

13.4.5 把必需的JAR文件添加到AEs类路径 325

13.4.6 使用AEs测试应用 325

13.5 部署到WebSphere AE 326

13.5.1 卸载以前的企业应用 326

13.5.2 安装企业应用 327

13.5.3 定义AE的8080端口 327

13.5.4 把必需的JAR文件添加到AE类路径 328

13.5.5 使用AE测试应用 328

13.6 SOAPEAREnabler工具 328

13.7 总结 329

测验 329

第14章 Web服务高级话题 330

14.1 高级SOAP编程 330

14.2 编程方式部署 330

14.3 编码和类型映射选择 331

14.3.1 编码和映射概述 331

14.3.2 用JavaBean作为参数实现Web服务 333

14.3.3 创建定制映射 337

14.3.4 带XML元素和其它参数的消息 342

14.3.5 小结 343

14.4 面向消息的通信 344

14.4.1 准备开发 345

14.4.2 从Web服务客户端访问消息服务 348

14.4.3 测试消息服务 351

14.4.4 小结 352

14.5 其它Web服务支持 353

14.5.1 从DADX文件创建Web服务 353

14.5.2 从URL生成Web服务 360

14.5.3 小结 361

14.6 高级UDDI话题 361

14.6.1 UDDI operator cloud 361

14.6.2 电子市场UDDI 362

14.6.3 门户UDDI 362

14.6.4 合作目录UDDI 363

14.6.5 内部企业应用集成UDDI 364

14.6.6 试验床UDDI 364

14.6.7 管理UDDI节点间的联系 365

14.6.8 IBM WebSphere UDDI Registry 366

14.7 用Web服务进行业务过程管理 366

14.7.1 IBM WSFl提议 366

14.7.2 WSFL流程模型 367

14.7.3 Web服务和MQSeries Workflow 370

14.7.4 Web服务和MQSeries Integrator 373

14.8 总结 375

测验 375

第15章 体系结构和设计事项 376

15.1 体系结构 376

15.1.1 Web服务公共的使用场景是什么? 376

15.1.2 Web服务在体系结构中的合理定位是什么? 377

15.1.3 对操作模型有何影响? 379

15.1.4 Web服务如何与相似技术关联? 379

15.1.5 安全 380

15.1.6 管理和服务质量(QoS) 381

15.1.7 性能 382

15.1.8 互操作性 382

15.1.9 SOA当前版本中有无不足之处? 383

15.1.10 如何开始我的项目? 383

15.2 设计 383

15.3 早期的最佳实践 385

15.4 故障分析 386

第16章 IBM的jStart计划 388

16.1 jStart提供优势 388

16.2 关于此项计划 388

16.2.1 我们是谁 388

16.2.2 我们如何工作 389

16.2.3 我们做些什么 389

16.3 竞争优势从何而来 389

16.4 Jstart的engagement模型 389

16.5 联系我们 390

附录A 产品安装与配置 391

A.1 DB2 v7.2 391

A.1.1 创建数据库示例 391

A.1.2 JDBC版本2 391

A.2 WAS高级版单机服务器版(AEs) 392

A.3 WAS高级版(AE) 392

A.4 WSAD 392

A.4.1 IBM代理控制器 393

A.5 IBM WebSphere UDDI注册系统 393

A.6 定义并装载ITSOWSAD数据库 393

A.6.1 示例数据 393

附录B WSAD中资源的状态转换 396

B.1 流生命周期 396

B.1.1 状态转换图 396

B.1.2 Not existing→HEAD stream(1) 396

B.1.3 Not existing→Branch stream(2) 397

B.1.4 Branch stream→Not existing 397

B.2 项目生命周期 397

B.2.1 状态转换图 397

B.2.2 Not existing→Unassigned in workspace(1) 398

B.2.3 Unassigned in workspace→Assigned in workspace(2) 398

B.2.4 Assigned in workspace→In repository stream(3) 398

B.2.5 In repository stream→Assigned in workspace(4) 399

B.2.6 In repository stream→Repository version(5) 399

B.2.7 Repository version-→In repository stream(6) 399

B.2.8 Repository version→Assigned in workspace(7) 399

B.2.9 Unassigned in workspace→In repository stream(8) 400

B.2.10 Unassigned in workspace→Not existing(9) 400

B.2.11 Assigned in workspace→Not existing(10) 400

B.2.12 Repository version→Not existing(11) 400

B.3 文件生命周期 400

B.3.1 状态转换图 400

B.3.2 Not existing→Modified in workspace(1) 401

B.3.3 Modified in workspace→Top of stream(2) 402

B.3.4 Top of stream→Below top of stream(3) 402

B.3.5 Top of stream→Base version in workspaee(4) 402

B.3.6 In project version→Base version in workspace(5) 403

B.3.7 Base version in workspace→Modified in workspace(6) 403

B.3.8 Modified in workspace→Base version in workspace(7) 403

B.3.9 Below top of stream→Base version in workspace(8) 403

B.3.10 Unassigned in workspace→Not existing(9) 403

B.3.1l Modified in workspace→In local history(10) 403

B.3.12 In local history→Modified in workspace(11) 404

B.3.13 In local history→Not existing(12) 404

附录C 测验题的答案 405

C.1 引言 405

C.2 WSAD概述 405

C.3 WSAD的Web应用开发 406

C.4 WSAD中的XML支持 406

C.5 WSAD的EJB开发 407

C.6 Web和EJB应用的部署 407

C.7 小组开发 408

C.8 Web服务体系结构概论 408

C.9 对Web服务的产品支持 409

C.10 静态Web服务 409

C.11 动态Web服务 409

C.12 复合Web服务 410

C.13 WebSphere环境下Web服务的部署 410

C.14 Web服务的高级话题 410

附录D 附加资料 412

D.1 Web资料的定位 412

D.2 Web资料的使用 412

D.2.1 下载Web资料的系统需求 412

D.2.2 如何使用Web资料 412

D.2.3 目录 413

D.3 指令 414

D.3.1 Setup子目录 414

D.3.2 WSADWeb子目录 415

D.3.3 WSADXML子目录 415

D.3.4 WSADEJB子目录 415

D.3.5 WSADDeploy子目录 415

D.3.6 WSStatic子目录 416

D.3.7 WSDynamic子目录 416

D.3.8 WSComposed子目录 416

D.3.9 WSDeploy子目录 417

D.3.9 WSEnhanced子目录 417

附录E 相关出版物 418

E.1 IBM红皮书 418

E.1.1 其它资源 419

E.2 本书参考的Web站点 420

E.3 如何获得IBM红皮书 421

E.3.1 IBM红皮书集 421

特别注意事项 422

缩写词汇表 423

书中常用词汇/词组的译文 425