PowerBuilder Internet 及分布式应用开发

PowerBuilder Internet 及分布式应用开发
作 者: William Green John Olson 李洪发 王海峰
出版社: 机械工业出版社
丛编项: 开发人员专业技术丛书
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: Powerbuilder
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  WilliamGreen和本书写作小组的其他作者都属于Sybase领域最杰出的成员,其中的一些人是TeamSybase的注册成员,该组织的成员是公认的Sybase专家。他们为PowerBuilder主要出版物撰写过文章,并且编写了多本书籍。他们是实现基于PowerBuilder的解决方案的活跃的开发者,是Sybase的核心顾问人员。

内容简介

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

图书目录

译者序

序言

作者简介

献辞

致谢

信息反馈

前言

第一部分 分布式计算基础

第1章 分布式应用开发介绍

1.1 目标

1.2 什么是分布式计算

1.3 什么是业务对象

1.4 为什么使用业务对象

1.5 PowerBuilder体系结构进化

1.5.1 基于窗口的体系结构

1.5.2 基于对象的体系结构

1.5.3 基于服务的体系结构

1.5.4 分布式体系结构

1.6 客户/服务器体系结构进化

1.6.1 起源

1.6.2 客户/服务器体系结构

1.6.3 分布式体系结构

1.7 分布式体系结构概念

1.8 协议、套接字和端口

1.8.1 TCP/IP

1.8.2 套接字和端口

1.8.3 HTTP

1.8.4 IIOP

1.9 分布式概念

1.9.1 代码分割

1.9.2 负载均衡

1.9.3 集群

1.9.4 故障切换

1.9.5 两阶段提交

1.9.6 连接缓存

1.9.7 多线程

1.9.8 实例池和无状态与状态组件

1.10 分布式对象模型

1.10.1 CORBA

1.10.2 COM

1.10.3 J2EE

1.11 小结

第2章 使用PowerBuilder开发分布式应用介绍

2.1 目标

2.2 解释一个分布式应用

2.3 使用PowerBuilder开发分布式系统的进化

2.3.1 分布式PowerBuilder

2.3.2 EAServer中的PowerBuilder

2.3.3 Web目标和Web DataWindow

2.3.4 用于JSP的新Web目标

2.3.5 访问其他应用服务器上的组件

2.3.6 部署PB组件到其他服务器

2.4 从PB角度看常见的分布式计算技术

2.4.1 分布式概念

2.4.2 组件和对象

2.5 PowerBuilder在分布式计算中的作用

2.5.1 胖客户

2.5.2 EAServer中的组件

2.5.3 EAServer之外的组件

2.5.4 Web服务

2.6 现在可以用PB来做什么

2.7 小结

第3章 EAServer介绍

3.1 目标

3.2 EAServer介绍

3.2.1 概述

3.2.2 EAServer家族

3.3 掌握Jaguar

3.4 EAServer的特性、服务和体系结构概述

3.4.1 HTTP服务器

3.4.2 J2EE容器

3.4.3 Web容器

3.4.4 EJB容器

3.4.5 J2EE应用编程接口网关

3.4.6 Web服务

3.4.7 CORBA支持

3.4.8 安全性服务

3.4.9 集群服务

3.4.10 管理和监控工具

3.4.11 SNMP支持

3.4.12 Sybase提供的工具

3.5 EAServer在企业中的作用

3.6 EAServer是否适合你的项目

3.7 小结

第4章 移植现有应用

4.1 目标

4.2 为什么移植

4.2.1 投资回报

4.2.2 功能优点

4.3 移植或重写

4.3.1 考虑PowerBuilder的情形

4.3.2 使用你现有的技术集

4.4 移植目标

4.4.1 界面生成

4.4.2 业务逻辑

4.4.3 进程监督

4.4.4 事务管理

4.5 结构良好的代码

4.5.1 良好的结构

4.5.2 从业务逻辑中分离GUI

4.5.3 细粒度对象和脚本

4.5.4 结构良好小结

4.6 移植

4.6.1 分析

4.6.2 移植数据访问逻辑到组件

4.6.3 移植业务逻辑到组件

4.6.4 移植进程监督代码到组件

4.6.5 服务端进程监督

4.6.6 客户端过程监督

4.7 复杂性

4.7.1 参数

4.7.2 全局变量

4.7.3 全局函数

4.7.4 即时性

4.7.5 WebDW

4.8 项目计划示例

4.8.1 高级的多层模型移植任务计划示例

4.8.2 高级的Web移植任务计划示例

4.9 Web.PB和DPB应用

4.9.1 Web.PB

4.9.2 DPB应用

4.9.3 Web.PB与DPB系统和EAServer系统之间的主要不同点

4.9.4 不支持哪些组件

4.9.5 为EAServer重新设计

4.10 小结

第5章 开发组件

5.1 目标

5.2 什么是组件

5.2.1 标准PB NVO

5.2.2 PB EAServer组件

5.2.3 EAServer组件限制

5.2.4 有效的CORBA数据类型

5.3 不同类型的组件

5.3.1 组件和对象的比较

5.3.2 状态组件和无状态组件

5.3.3 标准组件

5.3.4 共享组件

5.3.5 服务组件

5.4 开发组件

5.4.1 理解开发过程

5.4.2 使用继承

5.4.3 基本对象

5.4.4 使用标准PowerBuilder NVO和函数

5.4.5 数据访问

5.4.6 读和更新

5.4.7 事务管理

5.4.8 自动分界

5.4.9 异常处理

5.5 组件开发示例

5.5.1 基本对象

5.5.2 数据访问对象

5.5.3 使用这个结构

5.6 小结

第二部分 分布式应用开发

第6章 分布式应用分析与设计

6.1 目标

6.2 确定业务问题

6.3 如何遵循系统开发生命周期(SDLC)

6.4 分布式应用开发中的难点

6.5 分布式应用SDLC

6.6 逻辑分析与设计

6.6.1 业务过程模型

6.6.2 用例图

6.6.3 概念数据模型

6.6.4 验证

6.6.5 封装逻辑设计

6.7 物理设计

6.8 物理数据模型

6.8.1 对象模型

6.8.2 部署建模

6.9 测试—成功设计之路

6.10 使用设计设置范围

6.11 小结

第7章 探索Web DataWindow

7.1 目标

7.2 DataWindow的功能

7.3 理解Web DataWindow

7.4 何时使用Web DataWindow

7.5 体系结构

7.6 DataWindow设置

7.7 PowerDynamo

7.8 JavaServer页面

7.9 Active Server Pages(ASP)

7.10 应用服务器

7.10.1 HTMLGenerator 90组件

7.10.2 HTMLGenerator 90组件方法

7.11 自定义组件

7.12 微软事务服务器

7.13 客户事件和脚本

7.14 高级特性

7.14.1 HTML Exits/Appended HTML

7.14.2 HTML语法

7.14.3 网景绝对定位

7.14.4 JavaScript缓存

7.14.5 JavaScript Generation

7.15 小结

第8章 XML DataWindow

8.1 介绍

8.2 什么是XML

8.3 XML解析器

8.4 DataWindow导出引擎

8.5 导出模板:图形用户界面

8.5.1 导出模板的首部分

8.5.2 导出模板细节部分

8.5.3 将DataWindow元素映射到XML节点

8.6 导出XML

8.7 示例I

8.8 示例II

8.9 示例III

8.10 示例IV

8.11 导入XML

8.12 新DLL

8.13 小结

第9章 JSP的开发与使用

9.1 目标

9.2 JavaServer Page到底是什么

9.3 JavaServer Page机制

9.3.1 服务器端代码

9.3.2 指令

9.3.3 声明

9.3.4 scriptlet

9.3.5 表达式

9.3.6 标准标签

9.3.7 客户端代码

9.3.8 执行顺序

9.4 JSP可以访问的对象

9.5 为JSP开发EAServer组件

9.5.1 可以传递给组件的对象

9.5.2 组件能够返回的值

9.5.3 使用Web DataWindow

9.5.4 自定义标签库

9.6 编写自己的JSP

9.6.1 语法

9.6.2 调用EAServer组件

9.6.3 数据库访问

9.7 完整的JSP过程

9.8 小结

第10章 组件间开发

10.1 目标

10.2 组件间调用

10.2.1 组件接口

10.2.2 CreateInstance方法

10.2.3 使用代理

10.3 CREATE和CreateInstance:了解它们的不同

10.4 组件生命周期

10.5 组件类型:标准、共享和服务

10.5.1 标准组件

10.5.2 共享组件

10.5.3 服务组件

10.6 应用体系结构

10.6.1 服务器

10.6.2 包

10.6.3 组件

10.7 组件间调用的利与弊

10.8 小结

第11章 使用EAServer API

11.1 目标

11.2 Jaguar模块

11.2.1 Jaguar/Repository组件

11.2.2 Jaguar/Management组件

11.2.3 Jaguar/CMPing和Jaguar/JCMPing组件

11.2.4 Jaguar/Monitoring组件

11.2.5 Jaguar/FileViewer组件

11.3 CtsComponents模块

11.3.1 消息服务

11.3.2 CtsComponents/ThreadManager组件

11.4 CtsSecurity模块

11.4.1 CtsSecurity/SessionInfo组件

11.4.2 CtsSecurity::AuthService接口

11.4.3 CtsSecurity::Authorization-Service接口

11.4.4 CtsSecurity::RoleService接口

11.5 C/C++ API

11.6 小结

第12章 EAServer的多线程

12.1 目标

12.2 什么是多线程

12.2.1 多线程的长处

12.2.2 多线程的缺点

12.2.3 线程本地存储

12.3 EAServer线程类型

12.4 EAServer中的多线程

12.5 使用消息服务

12.5.1 将消息排队

12.5.2 消息服务

12.5.3 消息服务编码示例

12.5.4 取出消息

12.5.5 放入消息

12.6 线程的优先顺序

12.7 小结

第13章 访问J2EE结构

13.1 目标

13.2 API概述

13.2.1 CORBA通信(IIOP/CORBA)

13.2.2 远程方法协议/调用(Remote Method Protocol/Invocation,RMP/RMI)

13.2.3 Java数据库连接(Java Database Connectivity,JDBC)API

13.2.4 企业JavaBean技术

13.2.5 命名和目录接口

13.2.6 Java servlet技术

13.2.7 JavaServer Page技术

13.2.8 Java标签库

13.2.9 Java消息服务

13.2.10 Java事务服务

13.2.11 JavaMail

13.2.12 可扩展标记语言(XML/XSL)

13.3 J2EE连接器体系结构

13.4 Java验证和授权服务

13.5 以J2EE的方式使用PowerBuilder

13.5.1 Web应用程序

13.5.2 servlet如何交互

13.5.3 用Struts创建一个简单的Web应用程序

13.5.4 编写一个Struts应用程序

13.6 小结

第14章 使用基本组件框架的分布式应用开发

14.1 目标

14.2 什么是应用程序框架

14.3 PowerBuilder框架的历史

14.4 框架技术

14.4.1 来自于继承

14.4.2 来自于实例化

14.4.3 组件间调用

14.4.4 胖客户端和Web客户端框架

14.4.5 数据驱动框架

14.5 基本需求

14.5.1 客户端和服务器之间的通信

14.5.2 服务器上的服务

14.6 PowerBuilder可用的框架

14.6.1 企业应用程序框架:Cynergy System

14.6.2 双重应用程序框架:Hepek

14.6.3 smlPortal:PowerObjects

第15章 部署到EAServer

15.1 目标

15.2 部署概述

15.3 客户/服务器和分布式

15.4 组件部署的步骤

15.5 部署到一个EAServer开发服务器

15.5.1 选取对象

15.5.2 属性

15.5.3 完成部署

15.6 安装部署PBL

15.7 组件推广

15.8 使用WinZip进行推广

15.8.1 Component目录

15.8.2 用WinZip移动组件

15.8.3 修改Jaguar.props

15.8.4 查看组件

15.9 使用EAServer同步进行推广

15.10 部署方法小结

15.11 小结

第三部分 高级特性及技巧

第16章 使用Jaguar Manager管理EAServer

16.1 目标

16.2 系统管理员的目标

16.3 Jaguar Manager

16.4 使用Jaguar Manager

16.4.1 建立连接

16.4.2 Jaguar Manager管理什么

16.5 配置服务器

16.5.1 配置管理口令

16.5.2 关闭和启动

16.5.3 创建和删除服务器

16.5.4 配置监听程序

16.5.5 服务器属性

16.6 服务器属性(HTTP Config标签页)

16.6.1 服务器属性(Security标签页)

16.6.2 服务器属性(Resources标签页)

16.6.3 服务器属性(Log/Trace标签页)

16.6.4 服务器属性(Handlers标签页)

16.6.5 服务器属性(Naming Service标签页)

16.6.6 服务器属性(Dynamo标签页)

16.6.7 服务器属性(Hot Standby标签页)

16.6.8 服务器属性(Java Classes标签页)

16.6.9 服务器属性(Static Page Caching标签页)

16.7 配置数据库访问

16.8 部署

16.8.1 部署应用程序

16.8.2 Web应用程序

16.9 命名服务

16.10 集群和同步

16.11 消息服务

16.12 Web服务器重定向器

16.13 jagtool和jagant

16.13.1 jagtool

16.13.2 自动执行操作

16.13.3 jagant

16.14 小结

第17章 EAServer问题分析和疑难解答

17.1 目标

17.2 客户端和服务器环境

17.2.1 客户端需求

17.2.2 服务器需求

17.3 连接到EAServer

17.3.1 诊断失效连接

17.3.2 跟踪客户端连通性请求

17.4 实例化组件

17.4.1 建立服务器连通性

17.4.2 定位组件

17.4.3 实例化组件

17.4.4 调用组件方法

17.5 跟踪组件执行

17.5.1 远程调试

17.5.2 跟踪方法执行

17.6 EAServer中的线程

17.6.1 EAServer组件设置

17.6.2 绑定EAServer到一个CPU

17.6.3 转储线程

17.7 数据库访问

17.7.1 PowerBuilder数据库跟踪

17.7.2 特定销售商数据库跟踪

17.7.3 关于健全性检查

17.8 小结

第18章 监控

18.1 目标

18.2 监控EAServer实体

18.2.1 Jaguar Manager

18.2.2 Sybase Enterprise Web Console

18.2.3 SNMP代理

18.2.4 Jaguar::Monitoring API

18.3 操作系统监控

18.3.1 EAServer内存管理

18.3.2 EAServer中的CPU利用

18.3.3 EAServer中的线程

18.3.4 其他资源

18.4 小结

第19章 连接缓存

19.1 目标

19.2 需要连接缓存的情形

19.3 创建EAServer连接缓存

19.3.1 常规属性

19.3.2 驱动属性

19.3.3 缓存属性

19.3.4 所有属性

19.3.5 EAServer 3.6.1的不同点

19.3.6 使用jagtool

19.3.7 使用Jaguar::Repository接口

19.4 测试连接缓存

19.4.1 使用Jaguar Manager测试连接缓存

19.4.2 用jagtool测试连接缓存

19.4.3 使用Jaguar::CMPing和Jaguar::JCMPing接口测试连接缓存

19.5 在PowerBuilder中使用连接缓存

19.5.1 请求连接

19.5.2 建立连接

19.5.3 使用连接

19.5.4 释放连接

19.5.5 其他PowerBuilder连接参数

19.6 使用其他PowerBuilder数据库接口

19.7 XA资源

19.8 小结

第20章 XML的开发与使用

20.1 目标

20.2 什么是XML

20.3 XML技术

20.3.1 解析器

20.3.2 XSL

20.3.3 DTD

20.3.4 大纲

20.3.5 SOAP

20.3.6 ebXML

20.3.7 格式化对象

20.4 在PowerBuilder分布式应用中如何使用XML

20.4.1 XML DataWindow

20.4.2 PBDOM

20.4.3 使用其他解析器(MSXML)

20.4.4 Web 服务

20.4.5 数据/消息

20.5 在PowerBuilder中使用XML的示例

20.6 小结

第21章 Web服务的开发与使用

21.1 介绍

21.2 为何采用Web服务方式

21.3 Web服务体系结构

21.4 描述:WSDL

21.5 协议:SOAP

21.5.1 工作原理

21.5.2 请求

21.5.3 响应

21.6 知识库:UDDI

21.7 实现Web服务

21.7.1 创建服务器端部分

21.7.2 定义Web服务

21.7.3 PowerBuilder客户端

21.8 另一个Web服务实现:Axis

21.9 使用PowerBuilder 9创建Web服务的JSP客户端

21.10 小结

第22章 移动系统开发

22.1 介绍

22.2 为受限设备开发

22.3 创建可用的移动应用

22.3.1 了解用户

22.3.2 迅速地定位到目标

22.3.3 将应用限制到只具有所属的功能

22.3.4 使应用程序易于导航

22.3.5 使应用程序保持一致性

22.3.6 避免文字输入

22.3.7 避免不必要的用户错误

22.4 移动应用的内容

22.5 WAP论坛

22.6 WAP介绍

22.7 WAP模型

22.8 第一个WAP网页

22.9 在WAP客户环境中运行示例

22.10 Sybase iAnywhere m-Business Studio

22.10.1 开发瘦客户应用

22.10.2 开发智能客户应用

22.11 Sybase iAnywhere m-Business Studio包含的内容

22.11.1 iAnywhere无线服务器

22.11.2 同步和移动数据库

22.11.3 消息

22.11.4 Sybase企业门户集成

22.11.5 内容发送服务

22.11.6 应用管理服务

22.11.7 同步和移动数据库

22.12 iAnywhere应用框架

22.13 使用Sybase Adaptive Server UltraLite

22.14 使用数据复制

22.15 SQL特性

22.16 小结

第23章 通过PowerBuilder访问EJB服务器

23.1 目标

23.2 企业JavaBean概述

23.3 PowerBuilder实现概述

23.3.1 EJB 客户端PBNI的实现

23.3.2 PowerBuilder JVM 服务

23.3.3 PowerBuilder代理对象

23.4 编写一个PowerBuilder EJB客户端应用

23.4.1 加载Java VM

23.4.2 连接到EJB服务器

23.4.3 定位EJB

23.4.4 实例化EJB

23.4.5 调用EJB方法

23.4.6 与EJB服务器断开连接

23.5 部署EJB客户端应用

23.6 对基本客户端应用的扩展

23.6.1 处理java. lang. Object

23.6.2 动态转换对象和接口

23.6.3 创建附加的Java代理

23.7 客户端事务

23.7.1 访问事务

23.7.2 处理事务异常

23.7.3 管理事务

23.8 小结

第24章 使用企业门户

24.1 目标

24.2 为什么需要一个企业门户

24.3 什么是企业门户

24.4 为什么选择Sybase企业门户

24.5 Sybase 企业门户(EP)的应用领域

24.6 EP系统的特性

24.6.1 主要特性

24.6.2 其他特性与功能

24.7 Sybase EP评估版本

24.8 安装评估版本

24.8.1 安装步骤

24.8.2 运行Portal Studio

24.9 安装Sybase EP完全版本

24.9.1 Sybase EP 5.0产品正式版的内容

24.9.2 需要安装的模块介绍

24.9.3 需要保留的信息

24.9.4 Portlet Builder和Portal Interface

24.10 使用Sybase企业门户开发PowerBuilder应用

24.10.1 准备示例

24.10.2 Portal Studio

24.10.3 创建模板

24.10.4 创建portlet

24.10.5 使用工作流和对工作流进行版本控制

24.10.6 创建一个页面

24.11 Sybase企业门户安全体系结构

24.11.1 设置安全系统

24.11.2 设置单点登录

24.12 小结

第25章 展望—PB和分布式应用开发的未来

25.1 目标

25.2 未来的新特性

25.3 PowerBuilder和.NET

25.4 PowerBuilder和Java

25.5 PowerBuilder和移动技术

25.6 利用或影响PowerBuilder的技术

25.6.1 PowerBuilder的Appeon

25.6.2 集成PowerDesigner

25.7 其他技术

25.8 其他平台

25.9 展望未来

附录A 出错信息和疑难解答索引