Powerbuilder6.0实现 Browser/Server结构的Internet解决方案和工作
2024-07-21 02:10:06
供稿:网友
powerbuilder 6.0实现“web浏览器-数据库服务器”方案的前提条件是构建分布式应用体系。将 powerbuilder6.0应用分布到internet结构下,也就是把powerbuilder 6.0客户端应用分布到web服务器上,当浏览器客户端向web 服务器发出服务请求时,web服务器自动调用powerbuilder应用软件系统, 从而实现各种业务软件的internet结构功能。
一、组成browser/server结构的模块结构。
由上图所示, 用 powerbuilder6. 0 开发的各种基于internet的应用,是利用powerbuilder6.0 提供的分布式应用技术及powerscripts编程技术来实现的,相当于编写分布式应用环境下的服务器应用。例如采用powerscripts语言环境、数据窗口技术等。其制作流程及工作原理是:
1. 建立及配置 web 服务器。 powerbuilder 中自带o'reilly公司基于windowsnt 3.51以上版本和win 95/98平台的32位多线程个人web服务器website 1.1版。该web 服务器提供了完整的web服务创建、管理环境和安全机制。
2.在web服务器上建立可执行程序(web.pb)。web.pb(pbcgi60.exe)程序主要功能是调用powerbuilder应用服务器中预置的处理程序,包括分析执行用户对象中的用户函数,反馈html控制流和生成解释插入件程序等。
web.pb是用来开发基于web应用的基本部件,该部件本身就是web上的一个网关应用程序。该工具提供从 web服务器到powerbuilder应用服务器的访问,允许用户在 internet以及intranet下,通过web对数据库进行近于完全的操纵。同时,通过web.pb,动态创建html文档亦成为可能。web.pb程序是web服务器和 powerbuilder应用服务器相连接的桥梁。使用web.pb构建web应用有如下优点:
a.支持cgi、isapi、nsapi、msapi等多种网关程序接口。
b.支持powerbuilder中数据窗口的引用。
c.易于将以前编写的powerbuilder应用移植到web环境下。
d.易于创建嵌入powerbuilder应用程序的html文件,应用服务器在运行环境下,将根据用户需求, 动态生成html语法,发布完全动态的信息。
e.支持数据库连接。powerbuilder所能够连接到的数据库都可以被浏览器用户访问到,使得 web服务与数据库服务通过powerbuilder 6.0完整地结合起来。
3.建立powerbuilder应用服务器。powerbuilder应用服务器主要是一些用于激活powerbuilder6.0 业务应用的类库程序组成。创建上图所示的powerbuilder应用服务器时,须引用powerbuilder6.0 web类库,类库中定义了五种定制的类用户对象,封装了创建html语法及事务管理所需的函数、结构和实例等多种实体,可用来创建html语法、管理客户浏览器连接的状态等。powerbuilder 6.0应用服务器相当于分布式应用中客户端应用,用于向powerbuilder6.0业务应用发出调用请求。执行方法是:当powerbuilder6.0 应用服务器监听到web.pb的请求后,则启动powerbuilder应用服务器中已预定义的业务处理程序。
例如,当用户在浏览器端使用web浏览器(ie或netscape)浏览页面时,通过在html页面中嵌入的 <a>或<form>元素,web服务器可自动激活web.pb应用。活动的web服务器首先调用powerbuilder6.0的web.pb类程序,作为powerbuilder 分布式应用中的客户端应用,建立与powerbuilder 6.0应用服务器的连接,然后调用powerbuilder6.0应用服务器中定义的各个业务功能,也就是用户自定义对象中封装的用户函数,包括数据库访问和文件处理等数据处理功能。
4.建立powerbuilder业务应用程序。在用户自定义对象中,创建用户自定义函数。功能要求是根据浏览器端用户的需求,进行业务数据处理,把处理结果以html页格式,反馈给web.pb程序,经常用于人事管理、财务管理、信息数据处理和系统管理等业务工作。 powerbuilder业务应用程序有插入件(plug_ins)和嵌入html文件两种风格。plug-ins(插入件)的使用方法又分成window plug-ins和datawindow plug-ins两种。
window plug-ins 插入件编制业务程序的的方法是 : 在html页面上,嵌入并显示powerbuilder6.0中child 类型的窗口对象,可放置数据窗口(datawindow)、树状浏览(treeview)、tab页等丰富多彩的控件类型, 丰富html页面的表现形式。当客户端用浏览器浏览页面时,web服务器将psr文件或pbd文件卸载给客户,客户浏览器接收到psr文件和pbd文件,将child窗口对象嵌入在web 页面中,如果嵌入的是窗口对象,则窗口上定义的功能在浏览器环境下同样能使用,如窗口上定义了数据库操纵的功能,则在浏览器客户端能直接连接操纵数据库。plug-ins起到了将powerbuilder6.0对象嵌入到页面中的作用,数据窗口具有丰富的显示风格,用户比较欢迎浏览器上“powerbuilder child类数据窗口”的数据表现形式。
window activex的使用方法与window plug-ins类似,用来在html页面中嵌入并显示powerbuilder中child 类型的窗口对象。该组件可以和html中的vbscripts和javascripts交互使用。
单纯嵌入html文件的方法是流行的编程趋势, 也就是说根本不用插入件产品,客户端只需安装常规的web浏览器,便能实现真正“瘦”的 browser/client/server 结构体系。
总之,powerbuilder6.0 应用服务器将业务处理程序的执行结果以html格式返回给web服务器。web服务器再将html发布给用户,客户浏览器端在浏览器上接收到结果。