构建富 Internet 应用程序

本文转载自IBM教程,原文请参见:https://www6.software.ibm.com/developerworks/cn/education/opensource/os-laszlo/section2.html

 

OpenLaszlo


本节详细介绍 OpenLaszlo,包括它如何适合 Java 2 Platform, Enterprise Edition (J2EE™) 空间,以及可用的开发工具。

概述

OpenLaszlo 是一个开放源码的富客户机平台,用于开发动态数据驱动的应用程序。为了运行在 Macromedia Flash
中的、面向对象的、事件驱动的用户界面(UI),它结合了 XML、JavaScript™ 和
XPath。它包括一组丰富的组件和服务(称为运行时框架)和一个用于集成的可选 Java servlet。

OpenLaszlo 在公开的 Common Public License 下可用。这是一种流行的许可,因为除了常见的授予使用和修改源代码的权限以外,它还提供商业发行版。这意味着商业产品可以派生自 OpenLaszlo 平台。

OpenLaszlo 用于布局用户界面的 XML 格式叫做 Laszlo XML (LZX)。OpenLaszlo
包含一个编译器,用于将 LZX 和 JavaScript 编译成二进制 Shockwave Flash (SWF) 文件,Flash
播放器将呈现该文件。

运行在 Flash 播放器中是理想的,因为它是一个到处存在的平台。Macromedia 宣称它存在于 96% 连接到 Internet
的计算机上。没有哪个单个的浏览器可以这样宣称。不断地,它也成为在许多其他设备(比如手提计算机)上可用。Flash
播放器也使得安装比较容易,因为它自动地取得应用程序的最新版本,并自动地更新它自己。甚至,Flash
可以用于产生吸引眼球的应用程序,因为它还是用于开发基于 Web 的游戏和电影的平台。那么为什么不直接使用 Flash 工具呢?Flash
使用一种具有时间线和帧的电影手法(metaphor),这使得它难以构建业务应用程序。但是,OpenLaszlo
使用一种具有表、树和组件的常见应用程序框架手法,这是业务应用程序开发人员所熟悉的方法。



OpenLaszlo 如何进入 J2EE

OpenLaszlo 作为客户机层的另一个表示方案,完美地进入 J2EE 堆栈,如图 1 所示。



图 1. OpenLaszlo 作为 J2EE 堆栈的一部分




使用以下三种协议之一,OpenLaszlo 可以通过 HTTP 与后端服务通信。这三种协议是:JavaRPC、eXtensible
Markup Language -- Remote Procedure Call (XML-RPC) 和 SOAP。JavaRPC
允许调用服务器端 Java 方法。XML-RPC 和 SOAP 是基于标准的 Web 服务协议,支持以独立于语言的方式通过 HTTP
调用远程过程。

如果您不需要 J2EE 应用服务器的所有强大功能,OpenLaszlo 应用程序可以运行在包含的 Laszlo Presentation
Server (LPS) 上,这是 Apache Tomcat 的定制版本,或者运行在诸如 Apache or Microsoft
Internet Information Server (IIS) 的基本 Web 服务器上,这称为 Standalone
OpenLaszlo Output (SOLO)。

 

开发工具

要开始构建 Laszlo 应用程序,需要用到 OpenLaszlo Development Kit (OLDK)(参见 参考资料 )。OLDK 包含构建 OpenLaszlo 应用程序所需用到的任何东西,包括 LPS、运行时组件和编译器,以及很多很好的文档、演示和示例代码。

除了 OLDK 之外,我们还推荐使用 IDE for Laszlo。它是一个 Eclipse 插件,其中包括很多好的特性,比如 Laszlo 项目和文件向导、一个 Laszlo Perspective 以及一个可视化设计器和调试器。当前,IDE for Laszlo 是一个 IBM alphaWorks 项目。但是,IBM 和 Eclipse Foundation 最近宣布,IBM 将捐出 Eclipse Technology Projects 的代码基。

IDE for Laszlo 构建在 Eclipse Web Tools Platform (WTP) 之上。这是理想的情况,因为 WTP 旨在构建标准(HTML、XML、CSS)和基于 J2EE 的 Web 应用程序。建立在 WTP 基础之上,IDE for Laszlo 具有开发多层应用程序所需的所有工具。后面就会看到,WTP 也支持开发 Web 服务。

 

FluidMotion 架构

本教程中给出的 FluidMotion 应用程序是一个简单的 Work Order Management (WOM) 应用程序,允许雇员向数据库提交新的工作单。WOM 应用程序允许组织收集及管理工具和设备维护请求,通过确保请求不被忘记并及时完成,而为组织带来价值。本教程中的 FluidMotion WOM 允许维护人员查看列表中的工作单,并在完成后更新和关闭它们。

图 2 中所示的 FluidMotion 应用程序架构包括客户机和服务器组件。客户机是用 OpenLaszlo 富 Internet 客户机框架编写的,该框架由 Macromedia Flash Player 呈现,而后者宿主在 Web 浏览器中。客户机通过 SOAP 与通过 Apache Axis 公开的 Web 服务进行通信,Apache Axis 是一个开放源码的 Web 服务框架。Web 服务然后使用 Hibernate(一个开放源码的对象关系映射框架)将工作单持久存储到 Derby,Derby 是一个轻量级的 Java 数据库。服务器组件宿主在 OpenLaszlo 服务器上,该服务器是 Apache Tomcat 的一个扩展,而 Apache Tomcat 是一个开放源码的 Web 容器(关于这些技术的详细信息,请参见 参考资料 )。


图 2. FluidMotion 应用程序架构

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值