开始之前
本教程演示如何使用 OpenLaszlo 平台和 Web 服务来开发、打包和 部署一个已编写好的富 Internet 客户机。富客户端利用了后端的服务(这些后端服务是 通过使用 SOAP Web 服务的通用 SOA 方法提供)。还将了解如何有效地使用 Eclipse Laszlo IDE 和 Eclipse Web Tools 来使得开发更加容易且富有生产效率。
关于 本教程
由于大多数 Web 应用程序都构建于 HTML 和 HTTP 之上,所以 Web 对于 用户经常使用的应用程序(比如拍卖和书店站点)来说是一个很好的平台。但是,该例不 适合需要丰富用户界面的业务应用程序,因为缺少状态、组件数量有限且浏览器不一致。
如果不是 HTML 和 HTTP,那会是什么呢?富 Internet 客户机(Rich Internet Clients,RIC)也称为富 Internet 应用程序(Rich Internet Applications,RIA), 是下一代 Web 应用程序。RIC 提供客户机/服务器应用程序的可用性、响应性和重用,以 及传统 Web 应用程序的部署、可管理性和可用性。
本教程探索创建富 Internet 应用程序、FluidMotion 和使用 OpenLaszlo 平台。
前提条件
您应该具备一些基本的 Java、Web 开发和 XML 技能。 对 Web 服务、XPath 和持久存储的基本了解是有帮助的,但不是必需的。
系统需求
需要安装了以下软件:
Java Development Kit (JDK) V1.4 或更高版本
Apache Tomcat V5.0.28
还需要下载以下软件(本教程解释了如何安装和配置它):
OpenLaszlo V3.0.2
Eclipse Web Tools all-in-one 0.7.1
IDE for Laszlo V2.1
OpenLaszlo
本节详细介绍 OpenLaszlo,包括它如何适合 Java 2 Platform, Enterprise Edition (J2EE) 空间,以及可用的开发工具。
概 述
OpenLaszlo 是一个开放源码的富客户机平台,用于开发动态数据驱动的应用程 序。为了运行在 Macromedia Flash 中的、面向对象的、事件驱动的用户界面(UI),它 结合了 XML、JavaScript 和 XPath。它包括一组丰富的组件和服务(称为运行时 框架)和一个用于集成的可选 Java servlet。
OpenLaszlo 在公开的 Common Public License 下可用。这是一种流行的许可,因为 除了常见的授予使用和修改源代码的权限以外,它还提供商业发行版。这意味着商业产品 可以派生自 OpenLaszlo 平台。
其他富客户机
Asynchronous Java and XML (Ajax) 对于结合诸如异步 JavaScript、XML、XHTML 和 CSS 之类的标准 Web 技术 的旧技术来讲是一个新术语。有了这一新技术,随之出现了许多有竞争力的框架/工具箱 。至于哪种框架/工具箱将成为标准仍然未可知。但是这一技术无疑正在不断流行, Google 的威力在一定程度起到了推波助澜的作用。
Macromedia Flex 是一款商业产品,用于开发运行在 Flash 播放器中的业务应用程序 。许多 Web 游戏和电影也利用了 Flash 播放器。Flex 应用程序是用 Maximum Experience Markup Language (MXML) 编写的,并且也使用 ActionScript 进行事件和流 控制。MXML 是一种基于 XML 的语言,用于定义 UI。
OpenLaszlo 是本教程的焦 点,它是 Flex 开放源码的替代物。与 Flex 一样,它运行在 Flash 播放器中,使用 XML 来定义 UI,并使用脚本语言进行事件和流控制,以及用服务器端代码进行数据集成 。
OpenLaszlo 用于布局用户界面的 XML 格式叫做 Laszlo XML (LZX)。 OpenLaszlo 包含一个编译器,用于将 LZX 和 JavaScript 编译成二进制 Shockwave Flash (SWF) 文件,Flash 播放器将呈现该文件。
运行在 Flash 播放器中是理想 的,因为它是一个到处存在的平台。Macromedia 宣称它存在于 96% 连接到 Internet 的计算机上。没有哪个单个的浏览器可以这样宣称。不断地,它也成为在许多其他设备( 比如手提计算机)上可用。Flash 播放器也使得安装比较容易,因为它自动地取得应用程 序的最新版本,并自动地更新它自己。甚至,Flash 可以用于产生吸引眼球的应用程序, 因为它还是用于开发基于 Web 的游戏和电影的平台。那么为什么不直接使用 Flash 工具 呢?Flash 使用一种具有时间线和帧的电影手法(metaphor),这使得它难以构建业务应 用程序。但是,OpenLaszlo 使用一种具有表、树和组件的常见应用程序框架手法,这是 业务应用程序开发人员所熟悉的方法。