首页>参考读物>计算机科学与技术>综合

PowerBuilder Internet及分布式应用开发
作者 : (美)William Green, John D.Olson
译者 : 李洪发 王海峰 等译
出版日期 : 2004-10-18
ISBN : 7-111-14983-1
定价 : 65.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 543
开本 : 16开
原书名 : PowerBuilder 9:Internet and Distributed Apllication Devvelopment
原出版社: SAMS Publishing
属性分类: 店面
包含CD :
绝版 : 已绝版
图书简介

本书立足于利用PowerBuilder构建Web和分布式应用最重要的内容,全面介绍了PowerBuilder 9的体系结构、发展趋势、重要特性以及在分布式应用开发中用到的相关技术。本书内容包括:第一部分“分布式计算基础”介绍了分布式计算的发展,以及如何分析和开发新的分布式应用;第二部分“分布式应用开发”更为详细地介绍了PowerBuilder支持分布式应用开发的特性;第三部分“高级特性及技巧” 主要讲述从J2EE应用服务器访问EJB、访问Web服务、利用XML以及与其他Sybase技术集成(如移动平台和企业门户)等内容;书后的附录针对PowerBuilder分布式应用开发常见的出错信息、行为以及可能的原因和解决方法提供了一个快速的索引。
  本书面向PowerBuilder开发人员以及分布式应用开发人员,也可作为对该领域感兴趣的软件开发人员的高级工具书。

图书特色

图书前言

这是一本关于利用PowerBuilder进行分布式应用开发的书。经过几年的发展,PowerBuilder已经从单纯的客户/服务器工具演变为能够支持并提升开发经验的工具。
  最初涉足分布式应用开发领域是通过PowerBuilder的扩展,称为分布式PowerBuilder,简称DPB。DPB由一些附加的关键特性组成,它支持应用作为组件服务器的开发。DPB的概念比较简单,其实现允许开发人员构建他们的第一个分布式应用。
  当因特网开始作为支持商业应用的媒介为人所知时,PowerBuilder相应地扩展了功能,包含了一些支持开发基于因特网应用的构件。该实现被称为Web.PB,是由基于CGI的进程组成,可以和使用HTML的基于浏览器的应用进行通信。其中,指令被转换并传递给DPB服务器应用,由其生成HTML页面并返回给浏览器。同样,该实现是相对比较简单的,一定程度上限制了开发者的能力。
  大约与此同时,Sybase开始着手应用服务器的开发,该服务器比当时的CGI/DPB进程功能上更为强大,它允许开发者访问运行在服务器上的DataWindow。当然,DataWindow是可视化对象,在服务器上并不存在。我们实际访问的是DataStore,即非可视化的DataWindow。对数据的访问是通过称为MASP(Methods As Stored Procedure,作为存储过程的方法)的进程实现的。在Sybase优化此进程的过程中,引入了PowerDynamo,这是一个动态页面服务器,它能够访问应用服务器并以简洁、有效的方式将HTML页面传回浏览器。
  接着Java出现了,每件事随之改变。所有人都想用Java做每件事,规范开始被提出以形成相关的标准。这时PowerBuilder的应用服务器开始作为Jaguar/CTS(CTS意思是组件事务服务器)以适应和支持Java的需求。Jaguar已支持CORBA和COM组件,同时也增强了对Java以及本机PowerBuilder组件的支持。发展的结果就是出现了今天著名的企业应用服务器,简称EAServer。开发人员现在可以在EAServer上用Java、C++或是PowerBuilder来开发和部署。 EAServer可以被任何客户端前端应用访问,包括PowerBuilder应用,而且该产品的功能发展越来越快。
  每一个发行版本都会增加一些功能来支持发展中的标准,PowerBuilder 9也不例外。PowerBuilder 9支持XML、SOAP(Web服务协议),并且通过支持来自任何兼容的J2EE应用服务器(如BEA的Weblogic和IBM的Websphere)对EJB(Enterprise JavaBeans,企业JavaBean)的访问,突破了原来只能将EAServer作为应用服务器的限制。PowerBuilder还继续着新的发展,例如Pocket PowerBuilder,支持在手持的WIN CE设备上部署PowerBuilder应用(对Palm的支持也在开发中)。
  PowerBuilder仍然支持客户/服务器应用的开发,这些应用在今天的企业中仍旧被使用。不过,现在PowerBuilder支持的内容更多了。PowerBuilder组件在EAServer中是作为本机组件运行的。PowerBuilder还能够作为Web 服务的客户端,这是当前流行的分布式组件模式。还有正如已经提到过的,PowerBuilder还能够作为EJB的客户端。随着现在对.NET的支持以及在EAServer之外的其他平台上实现PowerBuilder组件开发的计划正在进行,PowerBuilder这个10多年前带给世界冲击的开发工具仍然显得生机勃勃。随着开发平台扩展到迄今尚未达到的环境,PowerBuilder还将在相当一段时间内继续发展。

本书向开发人员展示了分布式应用开发领域的深层次内容。
  第一部分“分布式计算基础”覆盖了基础部分,从分布式发展过程中的教训,到如何迁移现有的客户/服务器应用,以及如何从头分析和开发新的分布式应用。这些深入的分析可以使我们少走弯路。
  第二部分“分布式应用开发”更为详细地介绍了PowerBuilder支持分布式应用开发的特性。从Web DataWindow以及最近引入的XML DataWindow,到更先进的开发模式—如访问EAServer应用服务器内部API和开发多线程应用,本部分为更高级的开发提供了基础。
  第三部分“高级特性及技巧”是PowerBuilder开发人员的提高部分。本部分包括从J2EE应用服务器访问EJB、访问Web服务、利用XML以及和其他Sybase技术集成(如移动平台和企业门户)。本部分向开发人员展示了他们可以利用PowerBuilder获得的能力,说明了未来可继续扩展的可能性。
  正如你看到的,本书的内容涉及分布式应用开发的各个阶段。本书是Sybase在将PowerBuilder以及EAServer应用于分布式应用开发领域中所遵守的开放体系结构的说明,它们将继续成为我们现阶段主要的开发工具。

图书序言

我是1996年开始使用PowerBuilder的,用的是5.0版本。当时我处于事业变更时期,正在攻读信息系统方面的硕士,并且获得了作为PowerSoft技术支持的第一份工作。那时的我每天都全身心地投入,紧张、兴奋、敢于挑战,同时也筋疲力尽。在.com短短的鼎盛时期过了之后,我回到了Sybase,因为PowerBuilder给了我作为其新产品经理的机会,同时也因为我认识到PowerBuilder强大的RAD基础特别适合于今天的开发需要。是的,.com是令人兴奋的,但是PowerBuilder提供了更真实的东西!
  在Sybase工作期间,我从事PowerBuilder 8.0的开发,与一组高水平的专业人员一起奋斗。不论你是否相信,PB小组所给予我的兴奋甚至赶上了.com所带来的兴奋。为什么呢?因为在我看来,PowerBuilder为编程人员提供了非同寻常的机遇:它适合异构部署环境的快速应用开发,包括Web、客户/服务器、分布式、移动等等。我认为,市场上没有其他的4GL工具—或者其他任何工具—能够真正为如此多不同的计算体系结构提供这样高价值的帮助。这也正是我们今天所要达到的目标。看看9.0版本,你会看到很多新的功能,它们都是实现这个长期战略的一部分。
  无论是构建客户/服务器应用、开发或者移植Web应用,还是构建分布式体系,PowerBuilder 9.0都提供了丰富的特性,提供了很多非常重要的增强功能。强大的功能(如PBNI)意味着采用PB进行开发的可能性是无穷无尽的!用户可以基于该产品构建自己的扩展,可以和C/C++及Java进行通信,实现整个组织的集成。XML服务使你能够按照4GL方式使用XML,能够基于XML构建并保存DataWindow。人们长期期待的对PDF的支持终于在该版本中提供了两种实现。对EJB客户端的支持使你能够以比Java开发者更快的速度构建胖客户端应用,并且访问驻留在J2EE服务器上的相同业务逻辑。
  PowerBuilder 9.0为下一代RAD编程奠定了基础,这要求平台、体系结构和语言的独立性。它还需要结合应用开发整个生命期的各个方面—PowerBuilder 9.0通过和Sybase PowerDesigner(我们的应用设计工具)的紧密集成来实现这一点。很多令人兴奋的事情都发生在PowerBuilder上,我热切地想成为这个传奇式应用的新故事的一部分。
  本书的作者对PowerBuilder 9.0有着深入的理解,并以深入浅出的方式阐述了PowerBuilder 9.0的各种功能。我认识他们很多年了,深知他们对于该产品所具有的广博而深厚的知识。他们不仅将和你分享PowerBuilder 9.0的新特性和新功能,而且还将提供他们在PowerBuilder应用开发方面多年的经验。
  认真地阅读本书能够丰富你的经验,使你的项目开发上一个台阶,并最终将你带入新的开发时代。

Sue Dunnell
PowerBuilder产品经理,Sybase公司
2003年5月

作者简介

(美)William Green, John D.Olson:William Green: William(Bill) Green是一名具有10多年面向对象软件分析、设计和开发经验的软件开发人员、顾问和体系结构设计师。他在软件开发领域具有20多年的经验。Bill是Team Sybase的发起成员之一,该组织是一个技术专家组,为因特网上的Sybase客户提供义务帮助。Bill是多本技术书籍的作者或合作者,包括畅销的《PowerBuilder Foundation Class Library Professional Reference》(McGraw-Hill,1997)。他是各类业界业务期刊的长期撰稿人,是Sybase国际用户大会的长期讲师。他的邮件地址是bill.green@teamsybase.com。
John D.Olson: John Olson是一名具有15年设计和开发经验的软件顾问,具有超过10年应用Sybase工具的经验。他是Team Sybase的发起成员之一,是《PowerBuilder Developer誷 Journal》杂志的主编,是通过认证的Sybase讲师和PowerBuilder开发人员,也是一位多产作家。他在与Sybase相关的出版物和《Java Developer誷 Journal》上发表了超过100篇文章。他参与了六本最流行的PowerBuilder书籍的编著和编辑,包括本书和它的姊妹篇《PowerBuilder 9,Advanced Client/Server Development》。虽然他是作为作家和演讲家闻名的,实际上他最大的成就则是NASA航天飞机、Alaska Pipeline、美国海军空间和作战系统中心以及其他几个项目中核心任务的软件开发和管理顾问。他是Developower公司的首席技术官,该公司为因特网、多层模型及客户/服务器软件项目提供专家级的领导、技术和开发咨询。

译者简介

李洪发 王海峰 等译:暂无简介

译者序

自从1991年首度推出以来,PowerBuilder已经跨过了13年的发展历程。随着.com时代的兴起和没落,PowerBuilder的未来曾经看起来是黯淡无光的,但Sybase因势利导,先后发布了PB8和现在的PB9,使得PowerBuilder又成为主流开发工具之一。本书的目的就是立足于利用PowerBuilder 9.0构建Web和分布式应用的最重要方面,全面介绍了PowerBuilder 9.0的体系结构和发展趋势、重要特性和在分布式应用开发中用到的相关技术。
  本书的作者都是Sybase领域最杰出的成员,其中的一些人是Team Sybase中的发起人,该组织的成员是在其各自领域内被Sybase认可的专家。他们在PowerBuilder 9.0的设计中做了大量的工作,对于该产品具有广博而深厚的知识,在本书中他们以深入浅出的方式阐述了PowerBuilder 9.0的各种功能。他们不仅和读者分享了PowerBuilder 9.0所带来的各种新特性和功能,而且还带给读者在PowerBuilder应用开发方面多年的经验。

本书内容主要分为三个部分。
  第一部分“分布式计算基础”覆盖了基础部分,从分布式发展过程中的教训,到如何迁移现有的客户/服务器应用,以及如何从头分析和开发新的分布式应用。这些深入的分析可以使我们少走弯路。
  第二部分“分布式应用开发”更为详细地介绍了PowerBuilder支持分布式应用开发的各种特性。从Web DataWindow以及最近引入的XML DataWindow,到更先进的开发模式—如访问EAServer应用服务器内部API和开发多线程应用,本部分为更高级的开发提供了基础。
  第三部分“高级特性及技巧”是PowerBuilder开发人员的提高部分。本部分包括从J2EE应用服务器访问EJB、访问Web服务、利用XML以及和其他Sybase技术集成(如移动平台和企业门户)。本部分向开发人员展示了他们可以利用PowerBuilder获得的能力,说明了未来可继续扩展的可能性。
  本书最后的附录针对PowerBuilder分布式应用开发常见的出错信息、行为以及可能的原因和解决方法提供了一个快速的索引。
  PowerBuilder 9.0已经可以支持XML、SOAP(Web服务协议),并且通过支持来自任何兼容的J2EE应用服务器(如BEA的Weblogic和IBM的Websphere)对EJB的访问,突破了原来只能将EAServer作为应用服务器的限制。PowerBuilder还继续新的发展,例如Pocket PowerBuilder,该产品支持在手持的WIN CE设备上部署PowerBuilder应用等。读者从本书的编排和组织中可以展望PowerBuilder的未来。当然本书的作者也承诺随着PowerBuilder新版本的推出,本书也将推出更新版本,从这一点看,本书将一直是读者掌握PowerBuilder的长期利器和有效工具。
  本书由李洪发、王海峰等进行翻译,参与翻译工作的还有张昆琪、黄江海、骆智、刘耀明、杨旭、王蔓、欧阳荣彬、王强、尹婷、李宏平、刘海宁、邓春红、黄凯、周鹏、张小辉、刘建伟、李昂、陈磊、王秀英、王冶、李家峻等。周鹏负责本书的统稿工作。由于时间仓促,且译者的水平有限,在翻译过程中难免会出现一些错误,请读者批评指正。

周 鹏
2004年1月

图书目录

译者序
序言
作者简介
献辞
致谢
信息反馈
前言
第一部分  分布式计算基础
第1章  分布式应用开发介绍 1
1.1  目标 1
1.2  什么是分布式计算 1
1.3  什么是业务对象 2
1.4  为什么使用业务对象 2
1.5  PowerBuilder体系结构进化 3
1.5.1  基于窗口的体系结构 3
1.5.2  基于对象的体系结构 4
1.5.3  基于服务的体系结构 4
1.5.4  分布式体系结构 5
1.6  客户/服务器体系结构进化 6
1.6.1  起源 6
1.6.2  客户/服务器体系结构 7
1.6.3  分布式体系结构 7
1.7  分布式体系结构概念 9
1.8  协议、套接字和端口 13
1.8.1  TCP/IP 13
1.8.2  套接字和端口 14
1.8.3  HTTP 14
1.8.4  IIOP 15
1.9  分布式概念 16
1.9.1  代码分割 16
1.9.2  负载均衡 16
1.9.3  集群 17
1.9.4  故障切换 18
1.9.5  两阶段提交 19
1.9.6  连接缓存 19
1.9.7  多线程 20
1.9.8  实例池和无状态与状态组件 20
1.10  分布式对象模型 21
1.10.1  CORBA 21
1.10.2  COM 21
1.10.3  J2EE 21
1.11  小结 22
第2章  使用PowerBuilder开发分布式应用介绍 23
2.1  目标 23
2.2  解释一个分布式应用 23
2.3  使用PowerBuilder开发分布式系统的进化 24
2.3.1  分布式PowerBuilder 25
2.3.2  EAServer中的PowerBuilder 26
2.3.3  Web目标和Web DataWindow 29
2.3.4  用于JSP的新Web目标 29
2.3.5  访问其他应用服务器上的组件 29
2.3.6  部署PB组件到其他服务器 30
2.4  从PB角度看常见的分布式计算技术 30
2.4.1  分布式概念 30
2.4.2  组件和对象 30
2.5  PowerBuilder在分布式计算中的作用 32
2.5.1  胖客户 32
2.5.2  EAServer中的组件 34
2.5.3  EAServer之外的组件 34
2.5.4  Web服务 35
2.6  现在可以用PB来做什么 35
2.7  小结 36
第3章  EAServer介绍 37
3.1  目标 37
3.2  EAServer介绍 37
3.2.1  概述 37
3.2.2  EAServer家族 38
3.3  掌握Jaguar 39
3.4  EAServer的特性、服务和体系结构概述 40
3.4.1  HTTP服务器 41
3.4.2  J2EE容器 41
3.4.3  Web容器 41
3.4.4  EJB容器 42
3.4.5  J2EE应用编程接口网关 42
3.4.6  Web服务 42
3.4.7  CORBA支持 42
3.4.8  安全性服务 43
3.4.9  集群服务 44
3.4.10  管理和监控工具 44
3.4.11  SNMP支持 44
3.4.12  Sybase提供的工具 45
3.5  EAServer在企业中的作用 45
3.6  EAServer是否适合你的项目 45
3.7  小结 46
第4章  移植现有应用 47
4.1  目标 47
4.2  为什么移植 47
4.2.1  投资回报 48
4.2.2  功能优点 48
4.3  移植或重写 49
4.3.1  考虑PowerBuilder的情形 50
4.3.2  使用你现有的技术集 50
4.4  移植目标 51
4.4.1  界面生成 52
4.4.2  业务逻辑 52
4.4.3  进程监督 52
4.4.4  事务管理 53
4.5  结构良好的代码 54
4.5.1  良好的结构 55
4.5.2  从业务逻辑中分离GUI 55
4.5.3  细粒度对象和脚本 56
4.5.4  结构良好小结 56
4.6  移植 56
4.6.1  分析 57
4.6.2  移植数据访问逻辑到组件 60
4.6.3  移植业务逻辑到组件 60
4.6.4  移植进程监督代码到组件 62
4.6.5  服务端进程监督 63
4.6.6  客户端过程监督 64
4.7  复杂性 65
4.7.1  参数 65
4.7.2  全局变量 66
4.7.3  全局函数 66
4.7.4  即时性 67
4.7.5  WebDW 67
4.8  项目计划示例 68
4.8.1  高级的多层模型移植任务计划示例 68
4.8.2  高级的Web移植任务计划示例 69
4.9  Web.PB和DPB应用 71
4.9.1  Web.PB 71
4.9.2  DPB应用 73
4.9.3  Web.PB与DPB系统和EAServer系统之间的主要不同点 73
4.9.4  不支持哪些组件 74
4.9.5  为EAServer重新设计 74
4.10  小结 74
第5章  开发组件 76
5.1  目标 76
5.2  什么是组件 76
5.2.1  标准PB NVO 76
5.2.2  PB EAServer组件 76
5.2.3  EAServer组件限制 77
5.2.4  有效的CORBA数据类型 78
5.3  不同类型的组件 78
5.3.1  组件和对象的比较 78
5.3.2  状态组件和无状态组件 84
5.3.3  标准组件 84
5.3.4  共享组件 86
5.3.5  服务组件 87
5.4  开发组件 88
5.4.1  理解开发过程 88
5.4.2  使用继承 89
5.4.3  基本对象 89
5.4.4  使用标准PowerBuilder NVO和函数 92
5.4.5  数据访问 94
5.4.6  读和更新 96
5.4.7  事务管理 98
5.4.8  自动分界 101
5.4.9  异常处理 101
5.5  组件开发示例 103
5.5.1  基本对象 103
5.5.2  数据访问对象 104
5.5.3  使用这个结构 107
5.6  小结 108
第二部分 分布式应用开发
第6章  分布式应用分析与设计 109
6.1  目标 109
6.2  确定业务问题 110
6.3  如何遵循系统开发生命周期(SDLC) 110
6.4  分布式应用开发中的难点 111
6.5  分布式应用SDLC 112
6.6  逻辑分析与设计 112
6.6.1  业务过程模型 112
6.6.2  用例图 113
6.6.3  概念数据模型 114
6.6.4  验证 115
6.6.5  封装逻辑设计 115
6.7  物理设计 116
6.8  物理数据模型 116
6.8.1  对象模型 116
6.8.2  部署建模 121
6.9  测试—成功设计之路 122
6.10  使用设计设置范围 123
6.11  小结 123
第7章  探索Web DataWindow 124
7.1  目标 124
7.2  DataWindow的功能 124
7.3  理解Web DataWindow 125
7.4  何时使用Web DataWindow 125
7.5  体系结构 125
7.6  DataWindow设置 127
7.7  PowerDynamo 133
7.8  JavaServer页面 134
7.9  Active Server Pages(ASP) 140
7.10  应用服务器 141
7.10.1  HTMLGenerator 90组件 142
7.10.2  HTMLGenerator 90组件方法 142
7.11  自定义组件 146
7.12  微软事务服务器 146
7.13  客户事件和脚本 147
7.14  高级特性 148
7.14.1  HTML Exits/Appended HTML 148
7.14.2  HTML语法 149
7.14.3  网景绝对定位 151
7.14.4  JavaScript缓存 152
7.14.5  JavaScript Generation 153
7.15  小结 156
第8章  XML DataWindow 157
8.1  介绍 157
8.2  什么是XML 157
8.3  XML解析器 160
8.4  DataWindow导出引擎 160
8.5  导出模板:图形用户界面 162
8.5.1  导出模板的首部分 164
8.5.2  导出模板细节部分 166
8.5.3  将DataWindow元素映射到XML节点 166
8.6  导出XML 167
8.7  示例I 169
8.8  示例II 170
8.9  示例III 171
8.10  示例IV 173
8.11  导入XML 174
8.12  新DLL 174
8.13  小结 175
第9章  JSP的开发与使用 176
9.1  目标 176
9.2  JavaServer Page到底是什么 176
9.3  JavaServer Page机制 177
9.3.1  服务器端代码 178
9.3.2  指令 179
9.3.3  声明 182
9.3.4  scriptlet 182
9.3.5  表达式 183
9.3.6  标准标签 183
9.3.7  客户端代码 184
9.3.8  执行顺序 185
9.4  JSP可以访问的对象 185
9.5  为JSP开发EAServer组件 186
9.5.1  可以传递给组件的对象 186
9.5.2  组件能够返回的值 187
9.5.3  使用Web DataWindow 187
9.5.4  自定义标签库 188
9.6  编写自己的JSP 188
9.6.1  语法 189
9.6.2  调用EAServer组件 189
9.6.3  数据库访问 190
9.7  完整的JSP过程 191
9.8  小结 192
第10章  组件间开发 193
10.1  目标 193
10.2  组件间调用 193
10.2.1  组件接口 193
10.2.2  CreateInstance方法 195
10.2.3  使用代理 195
10.3  CREATE和CreateInstance:了解它们的不同 196
10.4  组件生命周期 198
10.5  组件类型:标准、共享和服务 198
10.5.1  标准组件 199
10.5.2  共享组件 199
10.5.3  服务组件 199
10.6  应用体系结构 200
10.6.1  服务器 201
10.6.2  包 201
10.6.3  组件 201
10.7  组件间调用的利与弊 202
10.8  小结 203
第11章  使用EAServer API 204
11.1  目标 204
11.2  Jaguar模块 205
11.2.1  Jaguar/Repository组件 205
11.2.2  Jaguar/Management组件 212
11.2.3  Jaguar/CMPing和Jaguar/JCMPing组件 213
11.2.4  Jaguar/Monitoring组件 213
11.2.5  Jaguar/FileViewer组件 216
11.3  CtsComponents模块 218
11.3.1  消息服务 218
11.3.2  CtsComponents/ThreadManager组件 221
11.4  CtsSecurity模块 224
11.4.1  CtsSecurity/SessionInfo组件 224
11.4.2  CtsSecurity::AuthService接口 224
11.4.3  CtsSecurity::Authorization-Service接口 225
11.4.4  CtsSecurity::RoleService接口 227
11.5  C/C++ API 228
11.6  小结 230
第12章  EAServer的多线程 231
12.1  目标 231
12.2  什么是多线程 231
12.2.1  多线程的长处 232
12.2.2  多线程的缺点 232
12.2.3  线程本地存储 233
12.3  EAServer线程类型 233
12.4  EAServer中的多线程 233
12.5  使用消息服务 238
12.5.1  将消息排队 238
12.5.2  消息服务 239
12.5.3  消息服务编码示例 239
12.5.4  取出消息 242
12.5.5  放入消息 245
12.6  线程的优先顺序 249
12.7  小结 249
第13章  访问J2EE结构 250
13.1  目标 250
13.2  API概述 250
13.2.1  CORBA通信(IIOP/CORBA) 251
13.2.2  远程方法协议/调用(Remote Method Protocol/Invocation,RMP/RMI) 251
13.2.3  Java数据库连接(Java Database Connectivity,JDBC)API 252
13.2.4  企业JavaBean技术 253
13.2.5  命名和目录接口 254
13.2.6  Java servlet技术 255
13.2.7  JavaServer Page技术 255
13.2.8  Java标签库 255
13.2.9  Java消息服务 256
13.2.10  Java事务服务 258
13.2.11  JavaMail 259
13.2.12  可扩展标记语言(XML/XSL) 261
13.3  J2EE连接器体系结构 261
13.4  Java验证和授权服务 262
13.5  以J2EE的方式使用PowerBuilder 262
13.5.1  Web应用程序 262
13.5.2  servlet如何交互 262
13.5.3  用Struts创建一个简单的Web应用程序 264
13.5.4  编写一个Struts应用程序 265
13.6  小结 277
第14章  使用基本组件框架的分布式应用开发 279
14.1  目标 279
14.2  什么是应用程序框架 279
14.3  PowerBuilder框架的历史 279
14.4  框架技术 281
14.4.1  来自于继承 281
14.4.2  来自于实例化 281
14.4.3  组件间调用 282
14.4.4  胖客户端和Web客户端框架 283
14.4.5  数据驱动框架 284
14.5  基本需求 285
14.5.1  客户端和服务器之间的通信 285
14.5.2  服务器上的服务 287
14.6  PowerBuilder可用的框架 288
14.6.1  企业应用程序框架:Cynergy System 288
14.6.2  双重应用程序框架:Hepek 288
14.6.3  smlPortal:PowerObjects 289
第15章  部署到EAServer 290
15.1  目标 290
15.2  部署概述 290
15.3  客户/服务器和分布式 290
15.4  组件部署的步骤 292
15.5  部署到一个EAServer开发服务器 292
15.5.1  选取对象 294
15.5.2  属性 294
15.5.3  完成部署 299
15.6  安装部署PBL 300
15.7  组件推广 300
15.8  使用WinZip进行推广 303
15.8.1  Component目录 303
15.8.2  用WinZip移动组件 305
15.8.3  修改Jaguar.props 307
15.8.4  查看组件 308
15.9  使用EAServer同步进行推广 309
15.10  部署方法小结 309
15.11  小结 310
第三部分 高级特性及技巧
第16章  使用Jaguar Manager管理EAServer 311
16.1  目标 311
16.2  系统管理员的目标 311
16.3  Jaguar Manager 312
16.4  使用Jaguar Manager 312
16.4.1  建立连接 312
16.4.2  Jaguar Manager管理什么 314
16.5  配置服务器 315
16.5.1  配置管理口令 315
16.5.2  关闭和启动 316
16.5.3  创建和删除服务器 316
16.5.4  配置监听程序 317
16.5.5  服务器属性 318
16.6  服务器属性(HTTP Config标签页) 318
16.6.1  服务器属性(Security标签页) 318
16.6.2  服务器属性(Resources标签页) 318
16.6.3  服务器属性(Log/Trace标签页) 319
16.6.4  服务器属性(Handlers标签页) 319
16.6.5  服务器属性(Naming Service标签页) 319
16.6.6  服务器属性(Dynamo标签页) 320
16.6.7  服务器属性(Hot Standby标签页) 320
16.6.8  服务器属性(Java Classes标签页) 320
16.6.9  服务器属性(Static Page Caching标签页) 321
16.7  配置数据库访问 321
16.8  部署 323
16.8.1  部署应用程序 323
16.8.2  Web应用程序 324
16.9  命名服务 325
16.10  集群和同步 326
16.11  消息服务 328
16.12  Web服务器重定向器 328
16.13  jagtool和jagant 329
16.13.1  jagtool 329
16.13.2  自动执行操作 330
16.13.3  jagant 331
16.14  小结 331
第17章  EAServer问题分析和疑难解答 332
17.1  目标 332
17.2  客户端和服务器环境 332
17.2.1  客户端需求 332
17.2.2  服务器需求 333
17.3  连接到EAServer 336
17.3.1  诊断失效连接 336
17.3.2  跟踪客户端连通性请求 338
17.4  实例化组件 341
17.4.1  建立服务器连通性 342
17.4.2  定位组件 342
17.4.3  实例化组件 343
17.4.4  调用组件方法 345
17.5  跟踪组件执行 345
17.5.1  远程调试 345
17.5.2  跟踪方法执行 347
17.6  EAServer中的线程 349
17.6.1  EAServer组件设置 350
17.6.2  绑定EAServer到一个CPU 351
17.6.3  转储线程 353
17.7  数据库访问 354
17.7.1  PowerBuilder数据库跟踪 354
17.7.2  特定销售商数据库跟踪 354
17.7.3  关于健全性检查 358
17.8  小结 358
第18章  监控 359
18.1  目标 359
18.2  监控EAServer实体 359
18.2.1  Jaguar Manager 359
18.2.2  Sybase Enterprise Web Console 362
18.2.3  SNMP代理 363
18.2.4  Jaguar::Monitoring API 366
18.3  操作系统监控 368
18.3.1  EAServer内存管理 368
18.3.2  EAServer中的CPU利用 371
18.3.3  EAServer中的线程 373
18.3.4  其他资源 375
18.4  小结 376
第19章  连接缓存 377
19.1  目标 377
19.2  需要连接缓存的情形 377
19.3  创建EAServer连接缓存 378
19.3.1  常规属性 379
19.3.2  驱动属性 380
19.3.3  缓存属性 381
19.3.4  所有属性 383
19.3.5  EAServer 3.6.1的不同点 384
19.3.6  使用jagtool 385
19.3.7  使用Jaguar::Repository接口 386
19.4  测试连接缓存 388
19.4.1  使用Jaguar Manager测试连接缓存 388
19.4.2  用jagtool测试连接缓存 388
19.4.3  使用Jaguar::CMPing和Jaguar::JCMPing接口测试连接缓存 388
19.5  在PowerBuilder中使用连接缓存 389
19.5.1  请求连接 389
19.5.2  建立连接 390
19.5.3  使用连接 393
19.5.4  释放连接 394
19.5.5  其他PowerBuilder连接参数 395
19.6  使用其他PowerBuilder数据库接口 398
19.7  XA资源 398
19.8  小结 400
第20章  XML的开发与使用 401
20.1  目标 401
20.2  什么是XML 402
20.3  XML技术 403
20.3.1  解析器 403
20.3.2  XSL 404
20.3.3  DTD 407
20.3.4  大纲 407
20.3.5  SOAP 407
20.3.6  ebXML 409
20.3.7  格式化对象 410
20.4  在PowerBuilder分布式应用中如何使用XML 411
20.4.1  XML DataWindow 411
20.4.2  PBDOM 411
20.4.3  使用其他解析器(MSXML) 411
20.4.4  Web 服务 413
20.4.5  数据/消息 413
20.5  在PowerBuilder中使用XML的示例 413
20.6  小结 420
第21章  Web服务的开发与使用 421
21.1  介绍 421
21.2  为何采用Web服务方式 421
21.3  Web服务体系结构 422
21.4  描述:WSDL 423
21.5  协议:SOAP 424
21.5.1  工作原理 425
21.5.2  请求 426
21.5.3  响应 427
21.6  知识库:UDDI 429
21.7  实现Web服务 429
21.7.1  创建服务器端部分 430
21.7.2  定义Web服务 431
21.7.3  PowerBuilder客户端 435
21.8  另一个Web服务实现:Axis 439
21.9  使用PowerBuilder 9创建Web服务的JSP客户端 440
21.10  小结 446
第22章  移动系统开发 447
22.1  介绍 447
22.2  为受限设备开发 447
22.3  创建可用的移动应用 448
22.3.1  了解用户 448
22.3.2  迅速地定位到目标 448
22.3.3  将应用限制到只具有所属的功能 449
22.3.4  使应用程序易于导航 449
22.3.5  使应用程序保持一致性 449
22.3.6  避免文字输入 449
22.3.7  避免不必要的用户错误 449
22.4  移动应用的内容 449
22.5  WAP论坛 450
22.6  WAP介绍 450
22.7  WAP模型 450
22.8  第一个WAP网页 451
22.9  在WAP客户环境中运行示例 452
22.10  Sybase iAnywhere m-Business Studio 453
22.10.1  开发瘦客户应用 453
22.10.2  开发智能客户应用 455
22.11  Sybase iAnywhere m-Business Studio包含的内容 455
22.11.1  iAnywhere无线服务器 455
22.11.2  同步和移动数据库 456
22.11.3  消息 456
22.11.4  Sybase企业门户集成 456
22.11.5  内容发送服务 456
22.11.6  应用管理服务 456
22.11.7  同步和移动数据库 457
22.12  iAnywhere应用框架 457
22.13  使用Sybase Adaptive Server UltraLite 461
22.14  使用数据复制 462
22.15  SQL特性 463
22.16  小结 465
第23章  通过PowerBuilder访问EJB服务器 466
23.1  目标 466
23.2  企业JavaBean概述 466
23.3  PowerBuilder实现概述 468
23.3.1  EJB 客户端PBNI的实现 468
23.3.2  PowerBuilder JVM 服务 470
23.3.3  PowerBuilder代理对象 473
23.4  编写一个PowerBuilder EJB客户端应用 476
23.4.1  加载Java VM 476
23.4.2  连接到EJB服务器 478
23.4.3  定位EJB 479
23.4.4  实例化EJB 480
23.4.5  调用EJB方法 481
23.4.6  与EJB服务器断开连接 484
23.5  部署EJB客户端应用 484
23.6  对基本客户端应用的扩展 485
23.6.1  处理java. lang. Object 485
23.6.2  动态转换对象和接口 486
23.6.3  创建附加的Java代理 488
23.7  客户端事务 489
23.7.1  访问事务 490
23.7.2  处理事务异常 490
23.7.3  管理事务 491
23.8  小结 493
第24章  使用企业门户 494
24.1  目标 494
24.2  为什么需要一个企业门户 494
24.3  什么是企业门户 495
24.4  为什么选择Sybase企业门户 495
24.5  Sybase 企业门户(EP)的应用领域 496
24.6  EP系统的特性 497
24.6.1  主要特性 497
24.6.2  其他特性与功能 498
24.7  Sybase EP评估版本 498
24.8  安装评估版本 499
24.8.1  安装步骤 499
24.8.2  运行Portal Studio 501
24.9  安装Sybase EP完全版本 501
24.9.1  Sybase EP 5.0产品正式版的内容 502
24.9.2  需要安装的模块介绍 502
24.9.3  需要保留的信息 507
24.9.4  Portlet Builder和Portal Interface 508
24.10  使用Sybase企业门户开发PowerBuilder应用 509
24.10.1  准备示例 510
24.10.2  Portal Studio 510
24.10.3  创建模板 511
24.10.4  创建portlet 514
24.10.5  使用工作流和对工作流进行版本控制 518
24.10.6  创建一个页面 519
24.11  Sybase企业门户安全体系结构 523
24.11.1  设置安全系统 524
24.11.2  设置单点登录 526
24.12  小结 532
第25章  展望—PB和分布式应用开发的未来 533
25.1  目标 533
25.2  未来的新特性 533
25.3  PowerBuilder和.NET 534
25.4  PowerBuilder和Java 534
25.5  PowerBuilder和移动技术 534
25.6  利用或影响PowerBuilder的技术 535
25.6.1  PowerBuilder的Appeon 535
25.6.2  集成PowerDesigner 535
25.7  其他技术 535
25.8  其他平台 535
25.9  展望未来 536
附录A  出错信息和疑难解答索引 537

教学资源推荐
作者: 李改成 编著
作者: 刘锋 等编著
参考读物推荐
作者: 余素芬 张建 等编著
作者: [美] 劳拉·塞巴斯蒂安-科尔曼(Laura Sebastian-Coleman)著
作者: (美)John Chirillo