科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网CIO与应用频道Appeon的PB应用网络迁移解决方案

Appeon的PB应用网络迁移解决方案

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Appeon(正阳软件)提供的Appeon for PowerBuilder产品可以把旧的PowerBuilder的C/S 应用直接自动转化成B/S应用,以下是介绍Appeon for PowerBuilder如何自动迁移PowerBuilder的C/S应用到B/S应用。

来源:支点网 2010年11月24日

关键字: 应用服务器 数据窗口对象

  • 评论
  • 分享微博
  • 分享邮件

  Appeon(正阳软件)提供的Appeon for PowerBuilder产品可以把旧的PowerBuilder的C/S 应用直接自动转化成B/S应用,以下是介绍Appeon for PowerBuilder如何自动迁移PowerBuilder的C/S应用到B/S应用。

  今天,很多以PB为开发工具的企业都面临着一个非常大的难题,就是如何将原有的C/S结构应用改写成B/S结构的应用。

  传统方法

  对于PowerBuilder C/S应用的开发者和使用者来说,将传统的PowerBuilder C/S应用重新架构为Web应用不仅耗时巨大,而且需要PowerBuilder开发者重新学习新的技术。由于不同架构的相关特性,PowerBuilder应用的窗体和数据窗口(DataWindow)可能需要逐一重写。此外,基于HTML的普通Web应用在界面交互能力上远远差于具有丰富界面的PowerBuilder应用。因此网络迁移项目可能花费数月甚至数年时间才能完成,而产生的Web应用给予用户的体验却远逊于C/S应用。

  在当今充满竞争和挑战的商业环境下,众多PowerBuilder应用企业迫切要求其C/S应用能快速、简便的迁移至网络,并要求迁移过程使用已有的编程技术。而且很多PowerBuilder企业非常看重网络环境下的丰富用户界面,以便在保留原有应用用户的同时可以吸引新的应用客户。 Appeon新方法Appeon for PowerBuilder能够将整个PowerBuilder应用自动向网络迁移,得到网络应用。

  Appeon for PowerBuilder以PowerBuilder应用的原始代码为依据,自动映射成真正的多层架构的B/S应用。生成的B/S应用基于HTML,在标准Microsoft网络浏览器中运行, 并且完全重现原C/S应用的用户界面。这些网络应用不仅达到了C/S应用的可使用性,还符合多层网络架构的优越的服务质量(QoS)标准,包括应用扩展性、可供性、安全性、可靠性和灵活性。

  Appeon for PowerBuilder 能够在PowerBuilder开发环境内完成B/S应用的全部生成过程。在整个生成过程中,开发人员无需编写任何HTML,Java,.NET或JavaScript代码--只需运用标准的PowerBuilder编程技术即可。

  利用Appeon for PowerBuilder,企业能继续使用PowerBuilder的开发环境创建新的C/S应用,只需点击一个按钮,便能生成该PowerBuilder应用的网络版本。同样,企业也可以使用Appeon for PowerBuilder 将现有的C/S应用转换为B/S应用。开发B/S应用原本是繁复的工作,如今通过优化现有的PowerBuilder应用或创建新的PowerBuilder应用便可完成,熟悉而又简便。

  网络迁移前后比较

  Appeon的三步网络迁移方案

  Appeon for PowerBuilder能将一个PowerBuilder应用发布至网络,这个发布的过程分为三步自动进行。在PB应用的网络发布过程进行完毕后,用户得到的是一个以HTML, JavaScript和XML精确复制原有PB应用的用户界面以及应用逻辑,并运行于标准Web浏览器的多层B/S应用。

  第一步 导出

  Appeon for PowerBuilder对一个PowerBuilder应用程序的源代码,即PowerBuilder库文件(*.PBL文件)进行解析,将PBL文件中的所有内容,包括PBL中包含的所有对象的定义和对象中写入的用户代码导出,将导出的源代码以XML格式纪录(XML语法树)。

  第二步 翻译

  Appeon for PowerBuilder以PB应用导出后生成的XML语法树中的代码为依据,通过一系列复杂的映射关系,将PB源代码自动翻译为HTML, JavaScript和XML语言。

  应用映射

  转换前的PB应用属于C/S架构,转换后生成的是B/S应用,这两种应用存在着架构上的差异。因此,Appeon for PowerBuilder在将PB应用向B/S应用映射的过程中,就涉及应用总体的多个方面做出了各种策略性的处理:

  用户界面

  PB应用的用户界面包括窗体、菜单、工具条以及各种可视化控件。在PowerBuilder库文件(PBL文件)中,每一个窗体的源代码都对窗体以及窗体中包含控件的外观做了描述,如窗体的类型、大小;控件的尺寸、颜色和显示字体等。这些对界面的描述经Appeon for PowerBuilder的判别后,被翻译为相应的HTML语言,Appeon采用HTML语言丰富的标签如<div>, <table>, <input>等,和各类标签的style等属性来模拟PB应用中的各类可视化控件。

  如果PB应用中由于用户操作或代码,动态改变了用户界面的外观,则利用嵌入HTML的JavaScript语言来动态修改Web页面的外观。

  业务逻辑

  PB应用中业务逻辑存在于写在窗口及窗口内控件中的用户代码,以及PB用户对象(user object)中的代码等。这些代码亦存放于PowerBuilder库文件中(PBL文件)。Appeon for PowerBuilder将这些业务逻辑自动翻译为相应的JavaScript语言。

  应用架构

  将PB应用映射成B/S应用存在着应用架构上的转变:在PB应用中,胖客户端负责显示应用用户界面以及所有业务逻辑的运算;在B/S应用中,数据库操作和某些业务逻辑则在应用服务器内完成。

  在翻译PB应用的过程中,Appeon for PowerBuilder将胖客户端一分为二,PB应用的用户界面、界面逻辑、和简单业务逻辑被翻译为HTML和JavaScript并发布至HTTP服务器;PB应用的数据窗口(DataWindow)定义和有关数据服务上传至应用服务器内运行,从而实现应用表现层和逻辑层分开的、真正的多层结构的B/S应用。

  事务处理和数据库连接

  在PB应用中,用户通过编写代码操纵Transaction对象以及嵌入式SQL语句和数据窗口(DataWindow)来完成事务操作。PB应用的胖客户端直接与数据库交互,用户通过修改Transaction的属性,可以控制与数据库的连接。

  在转换后的B/S应用中,B/S应用依靠中间层 - 应用服务器(Appeon Server)的连接缓存(connection cache)建立与数据库的连接。对于连接缓存,用户需要手工配置。

  所以,在向B/S应用的转换过程中,PB应用中通过Transaction对象进行事务操作的方式被应用服务器的连接缓存取而代之。所有的事务操作最终都由连接缓存来完成。

  数据库

  在转换PB应用的过程中,Appeon for PowerBuilder对原有PB应用使用的数据库不做任何的修改,原有PB应用的数据库服务器仍然被翻译生成后的B/S应用所使用。

  对象映射

  PowerBuilder是一种很强的面向对象的编程语言,一个PB应用就是由各种不同的对象组成,包括应用对象,数据窗口对象,菜单对象,以及可视化/非可视化用户对象等。

  Appeon for PowerBuilder采用HTML和JavaScript来构筑翻译后的B/S应用,B/S应用同样具有很强的“对象”概念:每一个PB对象(窗体、菜单、NVO)和每一个PB控件(按钮、下拉框、Tab、TreeView等)均被翻译为一个对应的JavaScript类。各种JavaScript类(class)便是构成翻译后B/S应用的主要组成部分。

  用户代码映射

  Appeon for PowerBuilder翻译PB应用在代码级别上的映射即是:将PowerBuilder代码(PowerScript)翻译为对应的JavaScript。代码的翻译是对编程语言各个层面上的特性进行复制,从对运算符、数据类型、变量声明、赋值的翻译,直至对系统函数、语句、结构、对象的方法、属性和事件的映射。

  数据窗口映射

  PB应用中所有的数据窗口(DataWindow)被映射为XML文件,XML定义了数据窗口的类型、外观、和数据结构等。B/S应用依据XML中的数据窗口定义,输出HTML DataWindow。

  第三步 发布

  PB应用经过翻译后,生成了一系列的HTML, JavaScript和XML文件。这些文件停留在本地机器上,需要将它们上传到网络服务器,这样用户才能使用Web浏览器访问存放在服务器上的B/S应用。

  用户需要配置以下的信息,以便Appeon for PowerBuilder利用这些信息,自动的完成将B/S应用上传或发布的工作:需要存放B/S应用的HTTP服务器的IP地址和端口号在需要存放B/S应用的HTTP服务器上建立一个FTP服务器,并告诉Appeon for PowerBuilder这台FTP服务器的IP、端口、账号信息。Appeon for PowerBuilder依靠FTP上传B/S应用的HTML, JavaScript和XML文件。

  需要存放B/S应用的应用服务器的IP地址、端口号和账号信息。在B/S应用的发布过程中,Appeon for PowerBuilder使用IIOP协议,向应用服务器灌输B/S应用数据服务的相关功能。

  Appeon网络迁移方案的优势

  与其他迁移方案或者传统的J2EE及.NET的重写相比较,正阳的网络迁移方案具有以下的优势:以最快的速度迁移至网络正阳产品不需对原有的应用进行重写,因此完全节省了传统网络应 用设计、编码和测试等方面的投入,大大缩减了项目周期的时间和费用。提供最佳的网络图形用户界面Appeon网络应用精确复制了桌面应用的用户界面,界面通过在标准的Microsoft网络浏览器中打开HTML文件实现。Appen的图形迁移能力的效率高于任何重写得到的应用,而且节省了所有用户再培训的时间和费用。

  企业风险最低化

  正阳产品极大降低企业迁移原有C/S应用所承担的风险,因为所得到的网络应用的核心运行部件都是经过长时间验证的。充分运用现有的组织技能正阳产品仅需原有的C/S应用开发技术和开发环境即可对新的Web应用进行开发和维护。保护已有的C/S应用投资正阳产品重用已有应用的源代码和数据库,保护了为应用设计、开发、测试等进行的投资。降低IT复杂程度使用正阳产品,开发人员在一套本地的C/S应用源代码上进行工作,便能实现向桌面环境和网络环境的双重发布。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章